Spaces:
Build error
Build error
Upload 2 files
Browse files- datasets.ipynb +537 -383
datasets.ipynb
CHANGED
@@ -203,6 +203,13 @@
|
|
203 |
"train_collection, test_collection = dataset_read(train_file_path, test_file_path)"
|
204 |
]
|
205 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
206 |
{
|
207 |
"cell_type": "code",
|
208 |
"execution_count": null,
|
@@ -287,75 +294,6 @@
|
|
287 |
"print(f\"Toplam çift sayısı: {document_count}\")\n"
|
288 |
]
|
289 |
},
|
290 |
-
{
|
291 |
-
"cell_type": "markdown",
|
292 |
-
"metadata": {},
|
293 |
-
"source": [
|
294 |
-
"MongoDb üzerinden title ve text verilerinin çekilmesi "
|
295 |
-
]
|
296 |
-
},
|
297 |
-
{
|
298 |
-
"cell_type": "code",
|
299 |
-
"execution_count": null,
|
300 |
-
"metadata": {},
|
301 |
-
"outputs": [],
|
302 |
-
"source": [
|
303 |
-
"\"\"\"@staticmethod\n",
|
304 |
-
" def get_input_titles():\n",
|
305 |
-
" collection = Database.get_mongodb(collection_name='train')\n",
|
306 |
-
" query = {\"title\": {\"$exists\": True}}\n",
|
307 |
-
" cursor = collection.find(query, {\"title\": 1, \"_id\": 0})\n",
|
308 |
-
" title_from_db = [doc['title'] for doc in cursor]\n",
|
309 |
-
"\n",
|
310 |
-
" return title_from_db\"\"\"\n",
|
311 |
-
"\n",
|
312 |
-
"\"\"\"@staticmethod\n",
|
313 |
-
" def get_input_texts():\n",
|
314 |
-
" collection = Database.get_mongodb(collection_name='train')\n",
|
315 |
-
" query = {\"texts\": {\"$exists\": True}}\n",
|
316 |
-
" cursor = collection.find(query, {\"texts\": 1, \"_id\": 0})\n",
|
317 |
-
" texts_from_db = [doc['texts'] for doc in cursor]\n",
|
318 |
-
" return texts_from_db\"\"\"\n",
|
319 |
-
" \n",
|
320 |
-
" #bin tane veri çekerek csv dosyası olarak kaydetme \n",
|
321 |
-
" \n",
|
322 |
-
" \n",
|
323 |
-
"\"\"\"@staticmethod\n",
|
324 |
-
" def get_titles_and_texts(batch_size=1000):\n",
|
325 |
-
"\n",
|
326 |
-
" \n",
|
327 |
-
" titles = Database.get_input_titles(batch_size=batch_size)\n",
|
328 |
-
" texts = Database.get_input_texts(batch_size=batch_size )\n",
|
329 |
-
" \n",
|
330 |
-
"\n",
|
331 |
-
"\n",
|
332 |
-
" def test_queries():\n",
|
333 |
-
"\n",
|
334 |
-
" collection = Database.get_mongodb(collection_name='train')\n",
|
335 |
-
" # Başlık sorgusu\n",
|
336 |
-
" titles_cursor = collection.find({\"title\": {\"$exists\": True}}, {\"title\": 1, \"_id\": 0})\n",
|
337 |
-
" titles = [doc['title'] for doc in titles_cursor]\n",
|
338 |
-
" \n",
|
339 |
-
"\n",
|
340 |
-
" # Metin sorgusu\n",
|
341 |
-
" texts_cursor = collection.find({\"text\": {\"$exists\": True}}, {\"text\": 1, \"_id\": 0})\n",
|
342 |
-
" texts = [doc['text'] for doc in texts_cursor]\n",
|
343 |
-
" \n",
|
344 |
-
" # Başlık ve metinlerin eşleşmesini sağlamak için zip kullanarak birleştiriyoruz\n",
|
345 |
-
" documents = [{\"title\": title, \"text\": text} for title, text in zip(titles, texts)]\n",
|
346 |
-
" document_count = len(documents)\n",
|
347 |
-
" return documents, document_count\n",
|
348 |
-
"\n",
|
349 |
-
"Database.test_queries()\n",
|
350 |
-
"\n",
|
351 |
-
"# Veritabanından başlıklar ve metinler alınır\n",
|
352 |
-
"documents, document_count = Database.get_titles_and_texts(batch_size=1000)\n",
|
353 |
-
"\n",
|
354 |
-
"# Sonuçların belirlenmesi\n",
|
355 |
-
"print(f\"Başlık ve metin çiftleri: {documents}\")\n",
|
356 |
-
"print(f\"Toplam çift sayısı: {document_count}\")\"\"\""
|
357 |
-
]
|
358 |
-
},
|
359 |
{
|
360 |
"cell_type": "markdown",
|
361 |
"metadata": {},
|
@@ -446,114 +384,9 @@
|
|
446 |
},
|
447 |
{
|
448 |
"cell_type": "code",
|
449 |
-
"execution_count":
|
450 |
"metadata": {},
|
451 |
-
"outputs": [
|
452 |
-
{
|
453 |
-
"name": "stdout",
|
454 |
-
"output_type": "stream",
|
455 |
-
"text": [
|
456 |
-
"Tokens: ['[CLS]', 'Biy', '##ografi', 'İsim', 'P', '##şı', '##q', '##o', 'ismi', 'Ah', '##ec', '##a', '##q', '##o', 'soy', 'ismi', '##dir', '.', 'Çerkes', '##lerin', '\"', '-', 'q', '##o', '\"', 'son', '##eki', 'ile', 'biten', 'hem', 'soya', '##d', '##ları', 'hem', 'de', 'lak', '##ap', '##ları', 'vardı', '.', 'Bu', 'ek', 'Türkçe', 'ad', '##lardaki', '\"', '-', 'oğlu', '\"', 'eki', '##yle', 'eş', 'anlamlı', '##dır', '.', 'P', '##şı', '##q', '##o', 'Türkçe', '\"', 'Beyoğlu', '\"', 'anlamına', 'gelen', 'bir', 'lak', '##ap', '##tır', '.', 'Erken', 'dönem', 'Çerkes', '##ler', 'tarihleri', '##ni', 'yazma', '##dıkları', 've', 'tüm', 'bilgiler', 'Rus', 'kaynaklarından', 'geldiği', 'için', 'Ah', '##ec', '##a', '##q', '##o', 'hakkında', 'pek', 'bir', 'şey', 'kayded', '##ilme', '##di', '.', '177', '##7', \"'\", 'de', 'Çerkes', '##ya', \"'\", 'nın', 'B', '##je', '##duğ', 'bölgesinde', 'doğdu', '.', 'Asker', '##î', 'eğitim', 'ile', 'büyüt', '##üldü', '.', 'Rus', '-', 'Çerkes', 'Savaşı', '##na', 'Katılım', '##ı', 'Birkaç', 'kaynak', ',', 'Ah', '##ec', '##a', '##q', '##o', \"'\", 'nun', 'tüm', 'Çerkes', '##ya', \"'\", 'da', 'saygı', 'duyulan', 'bir', 'kişi', 'olduğunu', 'belirtir', '.', 'En', 'az', '6', '.', '000', 'at', '##lı', '##dan', 'oluşan', 'kalıcı', 'bir', 'ordusu', 'vardı', 've', 'çatışmalar', 'sırasında', 'müfre', '##ze', '##si', '12', '.', '000', 'at', '##lı', '##ya', 'ulaşıyor', '##du', '.', 'Rus', 'birlikleri', '##ne', 'karşı', 'kazandığı', 'zafer', '##lerle', 'ünlü', '##y', '##dü', '.', 'Askeri', 'becerisi', '##nin', 'yanı', 'sıra', 'yetenekli', 'bir', 'devlet', 'adamı', '##ydı', '.', 'Ölüm', '18', '##37', 'yılında', 'Rus', 'tarafına', 'geçti', 've', 'bir', 'yıl', 'sonra', 'hastalık', '##tan', 'öldü', '.', 'Kaynak', '##ça', 'Çerkes', 'soylu', '##lar', '177', '##7', 'doğumlu', '##lar', '18', '##38', 'yılında', 'ölen', '##ler', 'Kafkas', 'Savaşı', \"'\", 'nda', 'kişiler', '[SEP]']\n",
|
457 |
-
"Positive Average Embedding Shape: torch.Size([353])\n",
|
458 |
-
"Positive Average Embedding: tensor([3.1219e-01, 1.1118e-02, 1.3312e-02, 8.7684e-02, 6.0835e-01, 4.2102e-01,\n",
|
459 |
-
" 3.7467e-01, 2.5975e-01, 6.8351e-02, 1.1375e-01, 6.9892e-02, 3.4909e-01,\n",
|
460 |
-
" 4.2718e-02, 6.9431e-01, 8.2034e-02, 4.9043e-01, 4.0028e-02, 2.4516e-02,\n",
|
461 |
-
" 4.0203e-01, 1.7956e-01, 2.7692e-01, 4.2539e-01, 3.9989e-01, 1.1785e-01,\n",
|
462 |
-
" 1.2440e-01, 1.7583e-01, 4.7179e-01, 3.4876e-01, 4.3870e-01, 3.8414e-01,\n",
|
463 |
-
" 3.6902e-01, 2.5584e-01, 2.0225e-01, 1.4411e-01, 2.9933e-01, 3.6910e-01,\n",
|
464 |
-
" 2.3893e-01, 6.0434e-01, 1.5669e-01, 3.6258e-01, 4.5186e-01, 3.8370e-01,\n",
|
465 |
-
" 4.9858e-01, 1.1362e-02, 2.1302e-01, 3.4201e-01, 7.4201e-01, 7.6336e-02,\n",
|
466 |
-
" 2.6290e-01, 2.3984e-01, 4.8434e-01, 4.7557e-01, 2.2432e-01, 3.5924e-01,\n",
|
467 |
-
" 5.3896e-02, 1.0477e-01, 3.8852e-01, 2.9142e-01, 3.6626e-01, 7.9898e-02,\n",
|
468 |
-
" 2.2686e-01, 2.3253e-02, 3.2550e+00, 1.1168e-01, 4.2853e-01, 7.7213e-02,\n",
|
469 |
-
" 3.1671e-01, 5.6494e-01, 2.0392e-01, 5.1432e-02, 2.2806e-01, 4.0886e-01,\n",
|
470 |
-
" 2.2627e-02, 2.4151e-01, 5.5605e-01, 2.1589e-01, 8.9567e-02, 4.1183e-01,\n",
|
471 |
-
" 3.7691e-01, 6.1995e-02, 5.1504e-01, 4.9226e-01, 1.0083e-01, 1.9789e-01,\n",
|
472 |
-
" 6.5205e-01, 3.4597e-02, 9.5440e-02, 6.5158e-01, 1.9009e-01, 1.1314e-01,\n",
|
473 |
-
" 1.0752e-01, 4.7765e-01, 2.5196e-01, 1.3468e-01, 4.2977e-01, 2.7336e-01,\n",
|
474 |
-
" 4.7672e-02, 2.3097e-01, 1.5998e-01, 3.8424e-01, 2.9264e-02, 7.9061e-02,\n",
|
475 |
-
" 2.8095e-01, 2.0505e-01, 8.8469e-02, 1.6993e-01, 2.5519e-01, 5.7010e-01,\n",
|
476 |
-
" 6.1551e-03, 7.0113e-02, 1.1820e-01, 5.2899e-01, 1.3287e-01, 1.0696e+00,\n",
|
477 |
-
" 3.1219e-01, 1.1373e-01, 2.6080e-01, 6.1457e-03, 5.5064e-02, 5.2089e-01,\n",
|
478 |
-
" 1.3195e-01, 4.0164e-01, 8.4919e-01, 1.8478e-02, 1.6000e-01, 3.3307e-01,\n",
|
479 |
-
" 2.8522e-01, 1.7133e-01, 2.4794e-02, 1.7487e-01, 1.0915e-01, 2.5974e-01,\n",
|
480 |
-
" 1.8174e-02, 8.9919e-02, 1.6508e+00, 4.9391e-01, 7.9321e-02, 3.2023e-02,\n",
|
481 |
-
" 3.1216e-01, 3.5055e-01, 2.4602e-01, 4.0553e-01, 1.3428e-02, 4.7906e-01,\n",
|
482 |
-
" 2.2494e-01, 3.5909e-01, 1.2861e-01, 9.8253e-02, 2.3110e-01, 3.1276e-01,\n",
|
483 |
-
" 6.4092e-02, 2.7386e-01, 6.7687e-02, 3.0518e-02, 3.8880e-01, 2.8110e-01,\n",
|
484 |
-
" 5.7723e-02, 4.2425e-01, 6.5768e-01, 8.4208e-02, 3.2153e-01, 5.6956e-01,\n",
|
485 |
-
" 1.2256e-01, 4.2261e-01, 7.9419e-02, 1.5746e-01, 1.8869e-01, 4.1413e-01,\n",
|
486 |
-
" 3.7192e-01, 5.4023e-02, 1.1605e-01, 4.2643e-01, 1.6004e-01, 2.1577e-01,\n",
|
487 |
-
" 6.6576e-03, 4.4046e-01, 2.4404e-01, 8.1931e-02, 2.2825e-01, 8.8104e-02,\n",
|
488 |
-
" 4.0676e-01, 1.6295e-01, 5.8565e-01, 3.9977e-01, 5.0630e-02, 6.7476e-02,\n",
|
489 |
-
" 3.4367e-01, 1.8640e-01, 3.3172e-01, 2.6630e-02, 1.6500e-02, 2.6911e-01,\n",
|
490 |
-
" 3.4227e-02, 9.7154e-01, 8.5149e-01, 1.0421e-01, 6.2897e-01, 1.8700e-02,\n",
|
491 |
-
" 1.6866e-01, 3.2686e-01, 6.5600e-01, 2.9388e-02, 3.8548e-02, 1.5922e-01,\n",
|
492 |
-
" 5.6203e-01, 3.1285e-01, 3.8763e-01, 1.6276e-01, 1.2610e-01, 3.5952e-01,\n",
|
493 |
-
" 1.3288e-01, 6.0504e-01, 2.9626e-01, 2.7285e-03, 3.7191e-01, 4.7557e-01,\n",
|
494 |
-
" 9.2435e-02, 2.3198e-01, 1.8715e-01, 2.5481e-01, 3.2795e-01, 4.5814e-01,\n",
|
495 |
-
" 1.9183e-01, 2.7146e-01, 1.9477e-01, 5.7984e-03, 3.0490e-01, 9.8830e-03,\n",
|
496 |
-
" 6.9638e-01, 9.4965e-02, 8.8206e-02, 2.3173e-01, 1.2170e-01, 4.5793e-01,\n",
|
497 |
-
" 1.4489e-01, 2.2540e-01, 5.2360e-01, 2.7475e-01, 5.3707e-01, 9.3503e-02,\n",
|
498 |
-
" 1.5903e-01, 3.4478e-01, 3.9456e-01, 1.7182e-01, 5.6727e-03, 2.7554e-01,\n",
|
499 |
-
" 2.0691e-01, 1.6439e-01, 6.4637e-01, 1.3178e-01, 1.9076e-01, 2.2997e-01,\n",
|
500 |
-
" 9.9676e-04, 2.3884e-01, 5.3464e-01, 2.7388e-01, 2.3122e-01, 3.2136e-01,\n",
|
501 |
-
" 6.1094e-02, 1.6784e-01, 5.6459e-01, 4.4070e-01, 3.1866e-01, 4.1410e-01,\n",
|
502 |
-
" 3.0922e-01, 5.3698e-01, 8.8994e-02, 4.1334e-01, 2.5389e-01, 6.0110e-01,\n",
|
503 |
-
" 3.8342e-01, 3.5175e-02, 2.5660e-01, 8.5744e-01, 3.0483e-03, 3.4735e-01,\n",
|
504 |
-
" 3.8450e-01, 3.9665e-01, 2.2100e-01, 6.5109e-02, 1.9003e-01, 7.4262e-02,\n",
|
505 |
-
" 2.9763e-01, 1.4098e-01, 1.1544e-01, 3.2446e-01, 1.4054e-02, 1.6943e-01,\n",
|
506 |
-
" 1.1417e-01, 3.3420e-01, 4.2107e-02, 4.9406e-01, 5.4846e-02, 2.4392e-01,\n",
|
507 |
-
" 2.4391e-01, 2.1046e-01, 3.5563e-01, 1.6479e-01, 3.2559e-01, 4.0702e-01,\n",
|
508 |
-
" 9.6086e-01, 1.3305e-01, 7.5751e-02, 2.7087e-01, 9.1068e-02, 4.7289e-01,\n",
|
509 |
-
" 1.0613e-01, 1.3504e-01, 2.7304e-01, 1.1986e-01, 4.7432e-01, 3.9729e-01,\n",
|
510 |
-
" 1.3385e-02, 1.6185e-01, 5.8601e-01, 5.8034e-01, 6.7479e-03, 2.1235e-01,\n",
|
511 |
-
" 6.9211e-02, 1.1795e-01, 4.8630e-01, 3.5354e-01, 4.4272e-01, 2.5360e-01,\n",
|
512 |
-
" 2.7441e-01, 4.9623e-01, 2.1623e-01, 8.4283e-02, 1.1040e-01, 3.7749e-02,\n",
|
513 |
-
" 3.9097e-01, 2.7157e-02, 3.7090e-01, 3.6961e-01, 2.6829e-01, 1.7171e-01,\n",
|
514 |
-
" 1.7970e-02, 1.2158e-01, 1.8717e-01, 3.5600e-01, 1.5203e-03, 2.1490e-01,\n",
|
515 |
-
" 2.2720e-01, 1.4914e-02, 3.7205e-01, 3.4950e-01, 3.4466e-02, 5.8733e-01,\n",
|
516 |
-
" 1.2950e-01, 2.3771e-01, 3.9440e-01, 1.0506e-01, 5.9232e-01])\n",
|
517 |
-
"TF-IDF Keywords: [array([['rus', 'ahecaqo', 'türkçe', 'pşıqo', '1777', 'çerkes', '000',\n",
|
518 |
-
" 'çerkesya', 'ölenler', 'ünlüydü', 'ölüm', 'yazmadıkları',\n",
|
519 |
-
" 'ulaşıyordu', 'tarihlerini', 'çerkeslerin', 'çerkesler',\n",
|
520 |
-
" 'çatışmalar', 'zaferlerle', 'öldü', 'soneki', 'soy', 'soyadları',\n",
|
521 |
-
" 'soylular', 'sıra', 'savaşı', 'sim', 'saygı', 'ordusu', 'oluşan',\n",
|
522 |
-
" 'olduğunu', 'müfrezesi', 'lakaptır', 'savaşına', 'qo', 'oğlu',\n",
|
523 |
-
" 'kazandığı', 'kaynakça', 'kaynaklarından', 'kaynak',\n",
|
524 |
-
" 'kaydedilmedi', 'katılımı', 'kalıcı', 'kafkas', 'ismidir',\n",
|
525 |
-
" 'ismi', 'hastalıktan', 'hakkında', 'geçti', 'lakapları',\n",
|
526 |
-
" 'kişiler', 'kişi', 'eş', 'geldiği', 'gelen', 'eğitim', 'dönem',\n",
|
527 |
-
" 'erken', 'ekiyle', 'ek', 'devlet', 'büyütüldü', 'bölgesinde',\n",
|
528 |
-
" 'bjeduğ', 'biyografi', 'duyulan', 'doğumlular', 'doğdu',\n",
|
529 |
-
" 'beyoğlu', 'bilgiler', 'birliklerine', 'belirtir', 'askerî',\n",
|
530 |
-
" 'becerisinin', 'atlıya', 'atlıdan', 'anlamlıdır', 'anlamına',\n",
|
531 |
-
" 'askeri', 'adlardaki', '1838', 'adamıydı', '1837', '12']],\n",
|
532 |
-
" dtype=object)]\n",
|
533 |
-
"BERT Embeddings:\n",
|
534 |
-
"Text 1 embedding shape: torch.Size([233, 768])\n"
|
535 |
-
]
|
536 |
-
},
|
537 |
-
{
|
538 |
-
"ename": "ValueError",
|
539 |
-
"evalue": "setting an array element with a sequence.",
|
540 |
-
"output_type": "error",
|
541 |
-
"traceback": [
|
542 |
-
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
|
543 |
-
"\u001b[1;31mTypeError\u001b[0m Traceback (most recent call last)",
|
544 |
-
"\u001b[1;31mTypeError\u001b[0m: float() argument must be a string or a real number, not 'csr_matrix'",
|
545 |
-
"\nThe above exception was the direct cause of the following exception:\n",
|
546 |
-
"\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)",
|
547 |
-
"Cell \u001b[1;32mIn[31], line 151\u001b[0m\n\u001b[0;32m 146\u001b[0m \u001b[38;5;124;03m\"\"\"# Liste halindeki TF-IDF değerlerini yazdırma\u001b[39;00m\n\u001b[0;32m 147\u001b[0m \u001b[38;5;124;03mprint(\"TF-IDF List:\")\u001b[39;00m\n\u001b[0;32m 148\u001b[0m \u001b[38;5;124;03mfor row in tfidf_list:\u001b[39;00m\n\u001b[0;32m 149\u001b[0m \u001b[38;5;124;03m print(row)\"\"\"\u001b[39;00m\n\u001b[0;32m 150\u001b[0m \u001b[38;5;66;03m# Anahtar kelimeler ve metin arasındaki cosine similarity hesaplama\u001b[39;00m\n\u001b[1;32m--> 151\u001b[0m similarity_score \u001b[38;5;241m=\u001b[39m \u001b[43mcosine_similarity\u001b[49m\u001b[43m(\u001b[49m\u001b[43m[\u001b[49m\u001b[43mkeywords_vector\u001b[49m\u001b[43m]\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43m[\u001b[49m\u001b[43mdocument_vector\u001b[49m\u001b[43m]\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 153\u001b[0m \u001b[38;5;66;03m# Her bir kelime için TF-IDF değerlerini yazdırma\u001b[39;00m\n\u001b[0;32m 154\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m doc_idx, doc \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28menumerate\u001b[39m(tfidf_scores):\n",
|
548 |
-
"File \u001b[1;32mc:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\sklearn\\utils\\_param_validation.py:213\u001b[0m, in \u001b[0;36mvalidate_params.<locals>.decorator.<locals>.wrapper\u001b[1;34m(*args, **kwargs)\u001b[0m\n\u001b[0;32m 207\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m 208\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m config_context(\n\u001b[0;32m 209\u001b[0m skip_parameter_validation\u001b[38;5;241m=\u001b[39m(\n\u001b[0;32m 210\u001b[0m prefer_skip_nested_validation \u001b[38;5;129;01mor\u001b[39;00m global_skip_validation\n\u001b[0;32m 211\u001b[0m )\n\u001b[0;32m 212\u001b[0m ):\n\u001b[1;32m--> 213\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m func(\u001b[38;5;241m*\u001b[39margs, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs)\n\u001b[0;32m 214\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m InvalidParameterError \u001b[38;5;28;01mas\u001b[39;00m e:\n\u001b[0;32m 215\u001b[0m \u001b[38;5;66;03m# When the function is just a wrapper around an estimator, we allow\u001b[39;00m\n\u001b[0;32m 216\u001b[0m \u001b[38;5;66;03m# the function to delegate validation to the estimator, but we replace\u001b[39;00m\n\u001b[0;32m 217\u001b[0m \u001b[38;5;66;03m# the name of the estimator by the name of the function in the error\u001b[39;00m\n\u001b[0;32m 218\u001b[0m \u001b[38;5;66;03m# message to avoid confusion.\u001b[39;00m\n\u001b[0;32m 219\u001b[0m msg \u001b[38;5;241m=\u001b[39m re\u001b[38;5;241m.\u001b[39msub(\n\u001b[0;32m 220\u001b[0m \u001b[38;5;124mr\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mparameter of \u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mw+ must be\u001b[39m\u001b[38;5;124m\"\u001b[39m,\n\u001b[0;32m 221\u001b[0m \u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mparameter of \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mfunc\u001b[38;5;241m.\u001b[39m\u001b[38;5;18m__qualname__\u001b[39m\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m must be\u001b[39m\u001b[38;5;124m\"\u001b[39m,\n\u001b[0;32m 222\u001b[0m \u001b[38;5;28mstr\u001b[39m(e),\n\u001b[0;32m 223\u001b[0m )\n",
|
549 |
-
"File \u001b[1;32mc:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\sklearn\\metrics\\pairwise.py:1679\u001b[0m, in \u001b[0;36mcosine_similarity\u001b[1;34m(X, Y, dense_output)\u001b[0m\n\u001b[0;32m 1635\u001b[0m \u001b[38;5;250m\u001b[39m\u001b[38;5;124;03m\"\"\"Compute cosine similarity between samples in X and Y.\u001b[39;00m\n\u001b[0;32m 1636\u001b[0m \n\u001b[0;32m 1637\u001b[0m \u001b[38;5;124;03mCosine similarity, or the cosine kernel, computes similarity as the\u001b[39;00m\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 1675\u001b[0m \u001b[38;5;124;03m [0.57..., 0.81...]])\u001b[39;00m\n\u001b[0;32m 1676\u001b[0m \u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[0;32m 1677\u001b[0m \u001b[38;5;66;03m# to avoid recursive import\u001b[39;00m\n\u001b[1;32m-> 1679\u001b[0m X, Y \u001b[38;5;241m=\u001b[39m \u001b[43mcheck_pairwise_arrays\u001b[49m\u001b[43m(\u001b[49m\u001b[43mX\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mY\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 1681\u001b[0m X_normalized \u001b[38;5;241m=\u001b[39m normalize(X, copy\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mTrue\u001b[39;00m)\n\u001b[0;32m 1682\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m X \u001b[38;5;129;01mis\u001b[39;00m Y:\n",
|
550 |
-
"File \u001b[1;32mc:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\sklearn\\metrics\\pairwise.py:185\u001b[0m, in \u001b[0;36mcheck_pairwise_arrays\u001b[1;34m(X, Y, precomputed, dtype, accept_sparse, force_all_finite, ensure_2d, copy)\u001b[0m\n\u001b[0;32m 175\u001b[0m X \u001b[38;5;241m=\u001b[39m Y \u001b[38;5;241m=\u001b[39m check_array(\n\u001b[0;32m 176\u001b[0m X,\n\u001b[0;32m 177\u001b[0m accept_sparse\u001b[38;5;241m=\u001b[39maccept_sparse,\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 182\u001b[0m ensure_2d\u001b[38;5;241m=\u001b[39mensure_2d,\n\u001b[0;32m 183\u001b[0m )\n\u001b[0;32m 184\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m--> 185\u001b[0m X \u001b[38;5;241m=\u001b[39m \u001b[43mcheck_array\u001b[49m\u001b[43m(\u001b[49m\n\u001b[0;32m 186\u001b[0m \u001b[43m \u001b[49m\u001b[43mX\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 187\u001b[0m \u001b[43m \u001b[49m\u001b[43maccept_sparse\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43maccept_sparse\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 188\u001b[0m \u001b[43m \u001b[49m\u001b[43mdtype\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mdtype\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 189\u001b[0m \u001b[43m \u001b[49m\u001b[43mcopy\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mcopy\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 190\u001b[0m \u001b[43m \u001b[49m\u001b[43mforce_all_finite\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mforce_all_finite\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 191\u001b[0m \u001b[43m \u001b[49m\u001b[43mestimator\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mestimator\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 192\u001b[0m \u001b[43m \u001b[49m\u001b[43mensure_2d\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mensure_2d\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 193\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 194\u001b[0m Y \u001b[38;5;241m=\u001b[39m check_array(\n\u001b[0;32m 195\u001b[0m Y,\n\u001b[0;32m 196\u001b[0m accept_sparse\u001b[38;5;241m=\u001b[39maccept_sparse,\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 201\u001b[0m ensure_2d\u001b[38;5;241m=\u001b[39mensure_2d,\n\u001b[0;32m 202\u001b[0m )\n\u001b[0;32m 204\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m precomputed:\n",
|
551 |
-
"File \u001b[1;32mc:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\sklearn\\utils\\validation.py:1012\u001b[0m, in \u001b[0;36mcheck_array\u001b[1;34m(array, accept_sparse, accept_large_sparse, dtype, order, copy, force_writeable, force_all_finite, ensure_2d, allow_nd, ensure_min_samples, ensure_min_features, estimator, input_name)\u001b[0m\n\u001b[0;32m 1010\u001b[0m array \u001b[38;5;241m=\u001b[39m xp\u001b[38;5;241m.\u001b[39mastype(array, dtype, copy\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mFalse\u001b[39;00m)\n\u001b[0;32m 1011\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m-> 1012\u001b[0m array \u001b[38;5;241m=\u001b[39m \u001b[43m_asarray_with_order\u001b[49m\u001b[43m(\u001b[49m\u001b[43marray\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43morder\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43morder\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mdtype\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mdtype\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mxp\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mxp\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 1013\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m ComplexWarning \u001b[38;5;28;01mas\u001b[39;00m complex_warning:\n\u001b[0;32m 1014\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\n\u001b[0;32m 1015\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mComplex data not supported\u001b[39m\u001b[38;5;130;01m\\n\u001b[39;00m\u001b[38;5;132;01m{}\u001b[39;00m\u001b[38;5;130;01m\\n\u001b[39;00m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;241m.\u001b[39mformat(array)\n\u001b[0;32m 1016\u001b[0m ) \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mcomplex_warning\u001b[39;00m\n",
|
552 |
-
"File \u001b[1;32mc:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\sklearn\\utils\\_array_api.py:751\u001b[0m, in \u001b[0;36m_asarray_with_order\u001b[1;34m(array, dtype, order, copy, xp, device)\u001b[0m\n\u001b[0;32m 749\u001b[0m array \u001b[38;5;241m=\u001b[39m numpy\u001b[38;5;241m.\u001b[39marray(array, order\u001b[38;5;241m=\u001b[39morder, dtype\u001b[38;5;241m=\u001b[39mdtype)\n\u001b[0;32m 750\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m--> 751\u001b[0m array \u001b[38;5;241m=\u001b[39m \u001b[43mnumpy\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43masarray\u001b[49m\u001b[43m(\u001b[49m\u001b[43marray\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43morder\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43morder\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mdtype\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mdtype\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 753\u001b[0m \u001b[38;5;66;03m# At this point array is a NumPy ndarray. We convert it to an array\u001b[39;00m\n\u001b[0;32m 754\u001b[0m \u001b[38;5;66;03m# container that is consistent with the input's namespace.\u001b[39;00m\n\u001b[0;32m 755\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m xp\u001b[38;5;241m.\u001b[39masarray(array)\n",
|
553 |
-
"\u001b[1;31mValueError\u001b[0m: setting an array element with a sequence."
|
554 |
-
]
|
555 |
-
}
|
556 |
-
],
|
557 |
"source": [
|
558 |
"#-------------------------tf-ıdf hesaplama\n",
|
559 |
"import re\n",
|
@@ -719,106 +552,66 @@
|
|
719 |
"\n"
|
720 |
]
|
721 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
722 |
{
|
723 |
"cell_type": "code",
|
724 |
-
"execution_count":
|
725 |
"metadata": {},
|
726 |
"outputs": [
|
727 |
{
|
728 |
"name": "stdout",
|
729 |
"output_type": "stream",
|
730 |
"text": [
|
731 |
-
"
|
732 |
-
"Positive Average Embedding Shape: torch.Size([353])\n",
|
733 |
-
"Positive Average Embedding: tensor([3.1219e-01, 1.1118e-02, 1.3312e-02, 8.7684e-02, 6.0835e-01, 4.2102e-01,\n",
|
734 |
-
" 3.7467e-01, 2.5975e-01, 6.8351e-02, 1.1375e-01, 6.9892e-02, 3.4909e-01,\n",
|
735 |
-
" 4.2718e-02, 6.9431e-01, 8.2034e-02, 4.9043e-01, 4.0028e-02, 2.4516e-02,\n",
|
736 |
-
" 4.0203e-01, 1.7956e-01, 2.7692e-01, 4.2539e-01, 3.9989e-01, 1.1785e-01,\n",
|
737 |
-
" 1.2440e-01, 1.7583e-01, 4.7179e-01, 3.4876e-01, 4.3870e-01, 3.8414e-01,\n",
|
738 |
-
" 3.6902e-01, 2.5584e-01, 2.0225e-01, 1.4411e-01, 2.9933e-01, 3.6910e-01,\n",
|
739 |
-
" 2.3893e-01, 6.0434e-01, 1.5669e-01, 3.6258e-01, 4.5186e-01, 3.8370e-01,\n",
|
740 |
-
" 4.9858e-01, 1.1362e-02, 2.1302e-01, 3.4201e-01, 7.4201e-01, 7.6336e-02,\n",
|
741 |
-
" 2.6290e-01, 2.3984e-01, 4.8434e-01, 4.7557e-01, 2.2432e-01, 3.5924e-01,\n",
|
742 |
-
" 5.3896e-02, 1.0477e-01, 3.8852e-01, 2.9142e-01, 3.6626e-01, 7.9898e-02,\n",
|
743 |
-
" 2.2686e-01, 2.3253e-02, 3.2550e+00, 1.1168e-01, 4.2853e-01, 7.7213e-02,\n",
|
744 |
-
" 3.1671e-01, 5.6494e-01, 2.0392e-01, 5.1432e-02, 2.2806e-01, 4.0886e-01,\n",
|
745 |
-
" 2.2627e-02, 2.4151e-01, 5.5605e-01, 2.1589e-01, 8.9567e-02, 4.1183e-01,\n",
|
746 |
-
" 3.7691e-01, 6.1995e-02, 5.1504e-01, 4.9226e-01, 1.0083e-01, 1.9789e-01,\n",
|
747 |
-
" 6.5205e-01, 3.4597e-02, 9.5440e-02, 6.5158e-01, 1.9009e-01, 1.1314e-01,\n",
|
748 |
-
" 1.0752e-01, 4.7765e-01, 2.5196e-01, 1.3468e-01, 4.2977e-01, 2.7336e-01,\n",
|
749 |
-
" 4.7672e-02, 2.3097e-01, 1.5998e-01, 3.8424e-01, 2.9264e-02, 7.9061e-02,\n",
|
750 |
-
" 2.8095e-01, 2.0505e-01, 8.8469e-02, 1.6993e-01, 2.5519e-01, 5.7010e-01,\n",
|
751 |
-
" 6.1551e-03, 7.0113e-02, 1.1820e-01, 5.2899e-01, 1.3287e-01, 1.0696e+00,\n",
|
752 |
-
" 3.1219e-01, 1.1373e-01, 2.6080e-01, 6.1457e-03, 5.5064e-02, 5.2089e-01,\n",
|
753 |
-
" 1.3195e-01, 4.0164e-01, 8.4919e-01, 1.8478e-02, 1.6000e-01, 3.3307e-01,\n",
|
754 |
-
" 2.8522e-01, 1.7133e-01, 2.4794e-02, 1.7487e-01, 1.0915e-01, 2.5974e-01,\n",
|
755 |
-
" 1.8174e-02, 8.9919e-02, 1.6508e+00, 4.9391e-01, 7.9321e-02, 3.2023e-02,\n",
|
756 |
-
" 3.1216e-01, 3.5055e-01, 2.4602e-01, 4.0553e-01, 1.3428e-02, 4.7906e-01,\n",
|
757 |
-
" 2.2494e-01, 3.5909e-01, 1.2861e-01, 9.8253e-02, 2.3110e-01, 3.1276e-01,\n",
|
758 |
-
" 6.4092e-02, 2.7386e-01, 6.7687e-02, 3.0518e-02, 3.8880e-01, 2.8110e-01,\n",
|
759 |
-
" 5.7723e-02, 4.2425e-01, 6.5768e-01, 8.4208e-02, 3.2153e-01, 5.6956e-01,\n",
|
760 |
-
" 1.2256e-01, 4.2261e-01, 7.9419e-02, 1.5746e-01, 1.8869e-01, 4.1413e-01,\n",
|
761 |
-
" 3.7192e-01, 5.4023e-02, 1.1605e-01, 4.2643e-01, 1.6004e-01, 2.1577e-01,\n",
|
762 |
-
" 6.6576e-03, 4.4046e-01, 2.4404e-01, 8.1931e-02, 2.2825e-01, 8.8104e-02,\n",
|
763 |
-
" 4.0676e-01, 1.6295e-01, 5.8565e-01, 3.9977e-01, 5.0630e-02, 6.7476e-02,\n",
|
764 |
-
" 3.4367e-01, 1.8640e-01, 3.3172e-01, 2.6630e-02, 1.6500e-02, 2.6911e-01,\n",
|
765 |
-
" 3.4227e-02, 9.7154e-01, 8.5149e-01, 1.0421e-01, 6.2897e-01, 1.8700e-02,\n",
|
766 |
-
" 1.6866e-01, 3.2686e-01, 6.5600e-01, 2.9388e-02, 3.8548e-02, 1.5922e-01,\n",
|
767 |
-
" 5.6203e-01, 3.1285e-01, 3.8763e-01, 1.6276e-01, 1.2610e-01, 3.5952e-01,\n",
|
768 |
-
" 1.3288e-01, 6.0504e-01, 2.9626e-01, 2.7285e-03, 3.7191e-01, 4.7557e-01,\n",
|
769 |
-
" 9.2435e-02, 2.3198e-01, 1.8715e-01, 2.5481e-01, 3.2795e-01, 4.5814e-01,\n",
|
770 |
-
" 1.9183e-01, 2.7146e-01, 1.9477e-01, 5.7984e-03, 3.0490e-01, 9.8830e-03,\n",
|
771 |
-
" 6.9638e-01, 9.4965e-02, 8.8206e-02, 2.3173e-01, 1.2170e-01, 4.5793e-01,\n",
|
772 |
-
" 1.4489e-01, 2.2540e-01, 5.2360e-01, 2.7475e-01, 5.3707e-01, 9.3503e-02,\n",
|
773 |
-
" 1.5903e-01, 3.4478e-01, 3.9456e-01, 1.7182e-01, 5.6727e-03, 2.7554e-01,\n",
|
774 |
-
" 2.0691e-01, 1.6439e-01, 6.4637e-01, 1.3178e-01, 1.9076e-01, 2.2997e-01,\n",
|
775 |
-
" 9.9676e-04, 2.3884e-01, 5.3464e-01, 2.7388e-01, 2.3122e-01, 3.2136e-01,\n",
|
776 |
-
" 6.1094e-02, 1.6784e-01, 5.6459e-01, 4.4070e-01, 3.1866e-01, 4.1410e-01,\n",
|
777 |
-
" 3.0922e-01, 5.3698e-01, 8.8994e-02, 4.1334e-01, 2.5389e-01, 6.0110e-01,\n",
|
778 |
-
" 3.8342e-01, 3.5175e-02, 2.5660e-01, 8.5744e-01, 3.0483e-03, 3.4735e-01,\n",
|
779 |
-
" 3.8450e-01, 3.9665e-01, 2.2100e-01, 6.5109e-02, 1.9003e-01, 7.4262e-02,\n",
|
780 |
-
" 2.9763e-01, 1.4098e-01, 1.1544e-01, 3.2446e-01, 1.4054e-02, 1.6943e-01,\n",
|
781 |
-
" 1.1417e-01, 3.3420e-01, 4.2107e-02, 4.9406e-01, 5.4846e-02, 2.4392e-01,\n",
|
782 |
-
" 2.4391e-01, 2.1046e-01, 3.5563e-01, 1.6479e-01, 3.2559e-01, 4.0702e-01,\n",
|
783 |
-
" 9.6086e-01, 1.3305e-01, 7.5751e-02, 2.7087e-01, 9.1068e-02, 4.7289e-01,\n",
|
784 |
-
" 1.0613e-01, 1.3504e-01, 2.7304e-01, 1.1986e-01, 4.7432e-01, 3.9729e-01,\n",
|
785 |
-
" 1.3385e-02, 1.6185e-01, 5.8601e-01, 5.8034e-01, 6.7479e-03, 2.1235e-01,\n",
|
786 |
-
" 6.9211e-02, 1.1795e-01, 4.8630e-01, 3.5354e-01, 4.4272e-01, 2.5360e-01,\n",
|
787 |
-
" 2.7441e-01, 4.9623e-01, 2.1623e-01, 8.4283e-02, 1.1040e-01, 3.7749e-02,\n",
|
788 |
-
" 3.9097e-01, 2.7157e-02, 3.7090e-01, 3.6961e-01, 2.6829e-01, 1.7171e-01,\n",
|
789 |
-
" 1.7970e-02, 1.2158e-01, 1.8717e-01, 3.5600e-01, 1.5203e-03, 2.1490e-01,\n",
|
790 |
-
" 2.2720e-01, 1.4914e-02, 3.7205e-01, 3.4950e-01, 3.4466e-02, 5.8733e-01,\n",
|
791 |
-
" 1.2950e-01, 2.3771e-01, 3.9440e-01, 1.0506e-01, 5.9232e-01])\n",
|
792 |
-
"TF-IDF Keywords: [array([['rus', 'ahecaqo', 'türkçe', 'pşıqo', '1777', 'çerkes', '000',\n",
|
793 |
-
" 'çerkesya', 'ölenler', 'ünlüydü', 'ölüm', 'yazmadıkları',\n",
|
794 |
-
" 'ulaşıyordu', 'tarihlerini', 'çerkeslerin', 'çerkesler',\n",
|
795 |
-
" 'çatışmalar', 'zaferlerle', 'öldü', 'soneki', 'soy', 'soyadları',\n",
|
796 |
-
" 'soylular', 'sıra', 'savaşı', 'sim', 'saygı', 'ordusu', 'oluşan',\n",
|
797 |
-
" 'olduğunu', 'müfrezesi', 'lakaptır', 'savaşına', 'qo', 'oğlu',\n",
|
798 |
-
" 'kazandığı', 'kaynakça', 'kaynaklarından', 'kaynak',\n",
|
799 |
-
" 'kaydedilmedi', 'katılımı', 'kalıcı', 'kafkas', 'ismidir',\n",
|
800 |
-
" 'ismi', 'hastalıktan', 'hakkında', 'geçti', 'lakapları',\n",
|
801 |
-
" 'kişiler', 'kişi', 'eş', 'geldiği', 'gelen', 'eğitim', 'dönem',\n",
|
802 |
-
" 'erken', 'ekiyle', 'ek', 'devlet', 'büyütüldü', 'bölgesinde',\n",
|
803 |
-
" 'bjeduğ', 'biyografi', 'duyulan', 'doğumlular', 'doğdu',\n",
|
804 |
-
" 'beyoğlu', 'bilgiler', 'birliklerine', 'belirtir', 'askerî',\n",
|
805 |
-
" 'becerisinin', 'atlıya', 'atlıdan', 'anlamlıdır', 'anlamına',\n",
|
806 |
-
" 'askeri', 'adlardaki', '1838', 'adamıydı', '1837', '12']],\n",
|
807 |
-
" dtype=object)]\n"
|
808 |
-
]
|
809 |
-
},
|
810 |
-
{
|
811 |
-
"ename": "TypeError",
|
812 |
-
"evalue": "sequence item 0: expected str instance, numpy.ndarray found",
|
813 |
-
"output_type": "error",
|
814 |
-
"traceback": [
|
815 |
-
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
|
816 |
-
"\u001b[1;31mTypeError\u001b[0m Traceback (most recent call last)",
|
817 |
-
"Cell \u001b[1;32mIn[32], line 96\u001b[0m\n\u001b[0;32m 94\u001b[0m \u001b[38;5;66;03m# TF-IDF matrisini oluşturma\u001b[39;00m\n\u001b[0;32m 95\u001b[0m tfidf_vectorizer \u001b[38;5;241m=\u001b[39m TfidfVectorizer(stop_words\u001b[38;5;241m=\u001b[39mstop_words_list)\n\u001b[1;32m---> 96\u001b[0m corpus \u001b[38;5;241m=\u001b[39m [\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43m \u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mjoin\u001b[49m\u001b[43m(\u001b[49m\u001b[43mkeywords\u001b[49m\u001b[43m)\u001b[49m] \u001b[38;5;66;03m# Anahtar kelimeleri string olarak birleştir\u001b[39;00m\n\u001b[0;32m 97\u001b[0m tfidf_matrix \u001b[38;5;241m=\u001b[39m tfidf_vectorizer\u001b[38;5;241m.\u001b[39mfit_transform(corpus \u001b[38;5;241m+\u001b[39m texts)\n\u001b[0;32m 99\u001b[0m \u001b[38;5;66;03m# Anahtar kelimeler vektörünü ve diğer metin vektörünü ayırma\u001b[39;00m\n",
|
818 |
-
"\u001b[1;31mTypeError\u001b[0m: sequence item 0: expected str instance, numpy.ndarray found"
|
819 |
]
|
820 |
}
|
821 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
822 |
"source": [
|
823 |
"import re\n",
|
824 |
"import numpy as np\n",
|
@@ -843,7 +636,7 @@
|
|
843 |
" return stop_words\n",
|
844 |
"\n",
|
845 |
"# Türkçe stop words dosyasını yükleyin\n",
|
846 |
-
"stop_words_list = load_stop_words('
|
847 |
"\n",
|
848 |
"# Gömülü kelimeleri k-means ile kümeleyebiliriz , benzerlik oranını hesaplamak için farklı algoritmalardan yararlanabiliriz.\n",
|
849 |
"def get_bert_embeddings(text):\n",
|
@@ -940,102 +733,27 @@
|
|
940 |
"print(f\"Keywords ile metin arasındaki benzerlik: {similarity_scores[0][0]}\")\n"
|
941 |
]
|
942 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
943 |
{
|
944 |
"cell_type": "code",
|
945 |
-
"execution_count":
|
946 |
"metadata": {},
|
947 |
"outputs": [
|
948 |
{
|
949 |
-
"
|
950 |
-
"
|
951 |
-
"text": [
|
952 |
-
"\n",
|
953 |
-
"A module that was compiled using NumPy 1.x cannot be run in\n",
|
954 |
-
"NumPy 2.1.0 as it may crash. To support both 1.x and 2.x\n",
|
955 |
-
"versions of NumPy, modules must be compiled with NumPy 2.0.\n",
|
956 |
-
"Some module may need to rebuild instead e.g. with 'pybind11>=2.12'.\n",
|
957 |
-
"\n",
|
958 |
-
"If you are a user of the module, the easiest solution will be to\n",
|
959 |
-
"downgrade to 'numpy<2' or try to upgrade the affected module.\n",
|
960 |
-
"We expect that some modules will need time to support NumPy 2.\n",
|
961 |
-
"\n",
|
962 |
-
"Traceback (most recent call last): File \"C:\\Users\\info\\AppData\\Local\\Programs\\Python\\Python310\\lib\\runpy.py\", line 196, in _run_module_as_main\n",
|
963 |
-
" return _run_code(code, main_globals, None,\n",
|
964 |
-
" File \"C:\\Users\\info\\AppData\\Local\\Programs\\Python\\Python310\\lib\\runpy.py\", line 86, in _run_code\n",
|
965 |
-
" exec(code, run_globals)\n",
|
966 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\ipykernel_launcher.py\", line 18, in <module>\n",
|
967 |
-
" app.launch_new_instance()\n",
|
968 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\traitlets\\config\\application.py\", line 1075, in launch_instance\n",
|
969 |
-
" app.start()\n",
|
970 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\ipykernel\\kernelapp.py\", line 739, in start\n",
|
971 |
-
" self.io_loop.start()\n",
|
972 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\tornado\\platform\\asyncio.py\", line 205, in start\n",
|
973 |
-
" self.asyncio_loop.run_forever()\n",
|
974 |
-
" File \"C:\\Users\\info\\AppData\\Local\\Programs\\Python\\Python310\\lib\\asyncio\\base_events.py\", line 603, in run_forever\n",
|
975 |
-
" self._run_once()\n",
|
976 |
-
" File \"C:\\Users\\info\\AppData\\Local\\Programs\\Python\\Python310\\lib\\asyncio\\base_events.py\", line 1909, in _run_once\n",
|
977 |
-
" handle._run()\n",
|
978 |
-
" File \"C:\\Users\\info\\AppData\\Local\\Programs\\Python\\Python310\\lib\\asyncio\\events.py\", line 80, in _run\n",
|
979 |
-
" self._context.run(self._callback, *self._args)\n",
|
980 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\ipykernel\\kernelbase.py\", line 545, in dispatch_queue\n",
|
981 |
-
" await self.process_one()\n",
|
982 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\ipykernel\\kernelbase.py\", line 534, in process_one\n",
|
983 |
-
" await dispatch(*args)\n",
|
984 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\ipykernel\\kernelbase.py\", line 437, in dispatch_shell\n",
|
985 |
-
" await result\n",
|
986 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\ipykernel\\ipkernel.py\", line 362, in execute_request\n",
|
987 |
-
" await super().execute_request(stream, ident, parent)\n",
|
988 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\ipykernel\\kernelbase.py\", line 778, in execute_request\n",
|
989 |
-
" reply_content = await reply_content\n",
|
990 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\ipykernel\\ipkernel.py\", line 449, in do_execute\n",
|
991 |
-
" res = shell.run_cell(\n",
|
992 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\ipykernel\\zmqshell.py\", line 549, in run_cell\n",
|
993 |
-
" return super().run_cell(*args, **kwargs)\n",
|
994 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\IPython\\core\\interactiveshell.py\", line 3075, in run_cell\n",
|
995 |
-
" result = self._run_cell(\n",
|
996 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\IPython\\core\\interactiveshell.py\", line 3130, in _run_cell\n",
|
997 |
-
" result = runner(coro)\n",
|
998 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\IPython\\core\\async_helpers.py\", line 128, in _pseudo_sync_runner\n",
|
999 |
-
" coro.send(None)\n",
|
1000 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\IPython\\core\\interactiveshell.py\", line 3334, in run_cell_async\n",
|
1001 |
-
" has_raised = await self.run_ast_nodes(code_ast.body, cell_name,\n",
|
1002 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\IPython\\core\\interactiveshell.py\", line 3517, in run_ast_nodes\n",
|
1003 |
-
" if await self.run_code(code, result, async_=asy):\n",
|
1004 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\IPython\\core\\interactiveshell.py\", line 3577, in run_code\n",
|
1005 |
-
" exec(code_obj, self.user_global_ns, self.user_ns)\n",
|
1006 |
-
" File \"C:\\Users\\info\\AppData\\Local\\Temp\\ipykernel_17960\\3105833283.py\", line 7, in <module>\n",
|
1007 |
-
" from transformers import BertTokenizer, BertModel\n",
|
1008 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\transformers\\__init__.py\", line 26, in <module>\n",
|
1009 |
-
" from . import dependency_versions_check\n",
|
1010 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\transformers\\dependency_versions_check.py\", line 16, in <module>\n",
|
1011 |
-
" from .utils.versions import require_version, require_version_core\n",
|
1012 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\transformers\\utils\\__init__.py\", line 34, in <module>\n",
|
1013 |
-
" from .generic import (\n",
|
1014 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\transformers\\utils\\generic.py\", line 462, in <module>\n",
|
1015 |
-
" import torch.utils._pytree as _torch_pytree\n",
|
1016 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\torch\\__init__.py\", line 2120, in <module>\n",
|
1017 |
-
" from torch._higher_order_ops import cond\n",
|
1018 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\torch\\_higher_order_ops\\__init__.py\", line 1, in <module>\n",
|
1019 |
-
" from .cond import cond\n",
|
1020 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\torch\\_higher_order_ops\\cond.py\", line 5, in <module>\n",
|
1021 |
-
" import torch._subclasses.functional_tensor\n",
|
1022 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\torch\\_subclasses\\functional_tensor.py\", line 42, in <module>\n",
|
1023 |
-
" class FunctionalTensor(torch.Tensor):\n",
|
1024 |
-
" File \"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\torch\\_subclasses\\functional_tensor.py\", line 258, in FunctionalTensor\n",
|
1025 |
-
" cpu = _conversion_method_template(device=torch.device(\"cpu\"))\n",
|
1026 |
-
"c:\\gitProjects\\yeni\\.venv\\lib\\site-packages\\torch\\_subclasses\\functional_tensor.py:258: UserWarning: Failed to initialize NumPy: _ARRAY_API not found (Triggered internally at C:\\actions-runner\\_work\\pytorch\\pytorch\\builder\\windows\\pytorch\\torch\\csrc\\utils\\tensor_numpy.cpp:84.)\n",
|
1027 |
-
" cpu = _conversion_method_template(device=torch.device(\"cpu\"))\n"
|
1028 |
-
]
|
1029 |
-
},
|
1030 |
-
{
|
1031 |
-
"ename": "NameError",
|
1032 |
-
"evalue": "name 'texts' is not defined",
|
1033 |
"output_type": "error",
|
1034 |
"traceback": [
|
1035 |
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
|
1036 |
-
"\u001b[1;
|
1037 |
-
"Cell \u001b[1;32mIn[
|
1038 |
-
"\u001b[1;
|
1039 |
]
|
1040 |
}
|
1041 |
],
|
@@ -1049,6 +767,7 @@
|
|
1049 |
"from transformers import BertTokenizer, BertModel\n",
|
1050 |
"from sklearn.metrics.pairwise import cosine_similarity\n",
|
1051 |
"import torch\n",
|
|
|
1052 |
"import torch.nn.functional as F\n",
|
1053 |
"\n",
|
1054 |
"# BERT Tokenizer ve Model'i yükleyin\n",
|
@@ -1061,53 +780,488 @@
|
|
1061 |
" with open(file_path, 'r', encoding='utf-8') as file:\n",
|
1062 |
" stop_words = [line.strip() for line in file if line.strip()]\n",
|
1063 |
" return stop_words\n",
|
1064 |
-
"
|
1065 |
"# Keywords çıkarma fonksiyonu\n",
|
1066 |
-
"def extract_keywords_tfidf(corpus, stop_words_list):\n",
|
1067 |
" \"\"\"TF-IDF ile anahtar kelimeleri çıkarır, stop words listesi ile birlikte kullanır.\"\"\"\n",
|
1068 |
" vectorizer = TfidfVectorizer(stop_words=stop_words_list)\n",
|
1069 |
" X = vectorizer.fit_transform(corpus)\n",
|
1070 |
" feature_names = vectorizer.get_feature_names_out()\n",
|
1071 |
-
" sorted_keywords = [feature_names[i] for i in X.sum(axis=0).argsort()[0, ::-1]]\n",
|
1072 |
-
"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1073 |
"\n",
|
|
|
|
|
1074 |
"# Türkçe stop words dosyasını yükleyin\n",
|
1075 |
-
"stop_words_list = load_stop_words('
|
|
|
|
|
1076 |
"# Define the text\n",
|
1077 |
-
"text = \"\"\"Biyografi\n",
|
1078 |
-
"İsim \n",
|
1079 |
-
"Pşıqo ismi Ahecaqo soy ismidir. Çerkeslerin \"-qo\" soneki ile biten hem soyadları hem de lakapları vardı. Bu ek Türkçe adlardaki \"-oğlu\" ekiyle eş anlamlıdır. Pşıqo Türkçe \"Beyoğlu\" anlamına gelen bir lakaptır.\n",
|
1080 |
"\n",
|
1081 |
-
"
|
1082 |
-
"
|
1083 |
"\n",
|
1084 |
-
"
|
1085 |
-
"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1086 |
"\n",
|
1087 |
-
"
|
1088 |
-
"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1089 |
"\n",
|
1090 |
-
"
|
|
|
|
|
|
|
|
|
|
|
|
|
1091 |
"\n",
|
1092 |
-
"
|
1093 |
-
"
|
1094 |
-
"
|
1095 |
-
"
|
1096 |
"\n",
|
1097 |
-
"#
|
1098 |
-
"#keywords = [\"rus\", \"ahecaqo\", \"türkçe\", \"pşıqo\", \"1777\", \"çerkes\", \"000\", \"çerkesya\", \"ölenler\", \"ünlüydü\"]\n",
|
1099 |
"\n",
|
1100 |
-
"
|
1101 |
-
"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1102 |
"\n",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1103 |
"# TF-IDF anahtar kelimelerini çıkar\n",
|
1104 |
-
"
|
1105 |
-
"print(\"TF-IDF Keywords:\", keywords)\n",
|
1106 |
"\n",
|
1107 |
-
"#
|
1108 |
-
"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1109 |
"keywords_tfidf = tfidf_vectorizer.transform(keywords)\n",
|
1110 |
"\n",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1111 |
"# Calculate the cosine similarity between the text and each keyword\n",
|
1112 |
"similarities = []\n",
|
1113 |
"for i in range(keywords_tfidf.shape[0]): #keyword_tfidf matrisinin satırları üzerinde dönfü tanımlıyoruz \n",
|
@@ -1123,8 +1277,8 @@
|
|
1123 |
"\n",
|
1124 |
"# Print the top 10 keywords with their similarities\n",
|
1125 |
"print(\"Top 10 Keywords with Similarities:\")\n",
|
1126 |
-
"for
|
1127 |
-
" print(f\"{
|
1128 |
]
|
1129 |
},
|
1130 |
{
|
|
|
203 |
"train_collection, test_collection = dataset_read(train_file_path, test_file_path)"
|
204 |
]
|
205 |
},
|
206 |
+
{
|
207 |
+
"cell_type": "markdown",
|
208 |
+
"metadata": {},
|
209 |
+
"source": [
|
210 |
+
"MongoDb üzerinden title ve text verilerinin çekilmesi "
|
211 |
+
]
|
212 |
+
},
|
213 |
{
|
214 |
"cell_type": "code",
|
215 |
"execution_count": null,
|
|
|
294 |
"print(f\"Toplam çift sayısı: {document_count}\")\n"
|
295 |
]
|
296 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
297 |
{
|
298 |
"cell_type": "markdown",
|
299 |
"metadata": {},
|
|
|
384 |
},
|
385 |
{
|
386 |
"cell_type": "code",
|
387 |
+
"execution_count": null,
|
388 |
"metadata": {},
|
389 |
+
"outputs": [],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
390 |
"source": [
|
391 |
"#-------------------------tf-ıdf hesaplama\n",
|
392 |
"import re\n",
|
|
|
552 |
"\n"
|
553 |
]
|
554 |
},
|
555 |
+
{
|
556 |
+
"cell_type": "markdown",
|
557 |
+
"metadata": {},
|
558 |
+
"source": [
|
559 |
+
"Türkçe stop_wordslerin tanımlanması ve kontrolü "
|
560 |
+
]
|
561 |
+
},
|
562 |
{
|
563 |
"cell_type": "code",
|
564 |
+
"execution_count": 35,
|
565 |
"metadata": {},
|
566 |
"outputs": [
|
567 |
{
|
568 |
"name": "stdout",
|
569 |
"output_type": "stream",
|
570 |
"text": [
|
571 |
+
"Sadece harflerden oluşan kelimeler kelimeler_sadece_harf.txt dosyasına yazıldı.\n"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
572 |
]
|
573 |
}
|
574 |
],
|
575 |
+
"source": [
|
576 |
+
"import re\n",
|
577 |
+
"# Dosyadan kelimeleri oku ve sözlük oluştur\n",
|
578 |
+
"words_dict = {}\n",
|
579 |
+
"\n",
|
580 |
+
"# Kelimelerin bulunduğu txt dosyasının yolu\n",
|
581 |
+
"input_file_path = \"kelimeler.txt\" # Dosya adını kendi dosya adınla değiştir\n",
|
582 |
+
"output_file_path=\"kelimeler_sadece_harf.txt\" #sadece harflerin yazılacağı dosya \n",
|
583 |
+
"\n",
|
584 |
+
"#input ve output file ile sadece harfleri içeren dosyayı oluşturalım.\n",
|
585 |
+
"with open(input_file_path, \"r\", encoding=\"utf-8\") as input_file,\\\n",
|
586 |
+
" open(output_file_path, \"w\", encoding=\"utf-8\") as output_file:\n",
|
587 |
+
"\n",
|
588 |
+
" for line in input_file:\n",
|
589 |
+
" # Satırı parçala, numarayı atla ve kelimeyi al\n",
|
590 |
+
" parts = line.strip().split(\" \", 1)\n",
|
591 |
+
" if len(parts) > 1: # Numara ve kelime varsa\n",
|
592 |
+
" number = parts[0] # Numara\n",
|
593 |
+
" word = parts[1] # Kelime\n",
|
594 |
+
" if re.match(\"^[a-zA-ZğüşöçİĞÜŞÖÇıİ]+$\", word): # Sadece harfleri kontrol et\n",
|
595 |
+
" output_file.write(word + \"\\n\") # Sadece kelimeyi yaz\n",
|
596 |
+
"\n",
|
597 |
+
"print(f\"Sadece harflerden oluşan kelimeler {output_file_path} dosyasına yazıldı.\")\n",
|
598 |
+
"\n",
|
599 |
+
"\n",
|
600 |
+
"\n"
|
601 |
+
]
|
602 |
+
},
|
603 |
+
{
|
604 |
+
"cell_type": "markdown",
|
605 |
+
"metadata": {},
|
606 |
+
"source": [
|
607 |
+
"Positive Average Embedding Hesaplama"
|
608 |
+
]
|
609 |
+
},
|
610 |
+
{
|
611 |
+
"cell_type": "code",
|
612 |
+
"execution_count": null,
|
613 |
+
"metadata": {},
|
614 |
+
"outputs": [],
|
615 |
"source": [
|
616 |
"import re\n",
|
617 |
"import numpy as np\n",
|
|
|
636 |
" return stop_words\n",
|
637 |
"\n",
|
638 |
"# Türkçe stop words dosyasını yükleyin\n",
|
639 |
+
"stop_words_list = load_stop_words('gereksiz_kelimeler.txt')\n",
|
640 |
"\n",
|
641 |
"# Gömülü kelimeleri k-means ile kümeleyebiliriz , benzerlik oranını hesaplamak için farklı algoritmalardan yararlanabiliriz.\n",
|
642 |
"def get_bert_embeddings(text):\n",
|
|
|
733 |
"print(f\"Keywords ile metin arasındaki benzerlik: {similarity_scores[0][0]}\")\n"
|
734 |
]
|
735 |
},
|
736 |
+
{
|
737 |
+
"cell_type": "markdown",
|
738 |
+
"metadata": {},
|
739 |
+
"source": [
|
740 |
+
"Stop words ve texlerin tanımlanması "
|
741 |
+
]
|
742 |
+
},
|
743 |
{
|
744 |
"cell_type": "code",
|
745 |
+
"execution_count": 8,
|
746 |
"metadata": {},
|
747 |
"outputs": [
|
748 |
{
|
749 |
+
"ename": "TypeError",
|
750 |
+
"evalue": "process_texts() missing 1 required positional argument: 'top_n'",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
751 |
"output_type": "error",
|
752 |
"traceback": [
|
753 |
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
|
754 |
+
"\u001b[1;31mTypeError\u001b[0m Traceback (most recent call last)",
|
755 |
+
"Cell \u001b[1;32mIn[8], line 86\u001b[0m\n\u001b[0;32m 84\u001b[0m combined_texts \u001b[38;5;241m=\u001b[39m mongo_db_combined_texts()\n\u001b[0;32m 85\u001b[0m \u001b[38;5;66;03m# Tüm metinleri işle\u001b[39;00m\n\u001b[1;32m---> 86\u001b[0m processed_texts \u001b[38;5;241m=\u001b[39m \u001b[43mprocess_texts\u001b[49m\u001b[43m(\u001b[49m\u001b[43mcombined_texts\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mstop_words_list\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 87\u001b[0m \u001b[38;5;66;03m# Top n anahtar kelimeyi almak için top_n değeri belirleyin\u001b[39;00m\n\u001b[0;32m 88\u001b[0m top_n \u001b[38;5;241m=\u001b[39m \u001b[38;5;241m5\u001b[39m\n",
|
756 |
+
"\u001b[1;31mTypeError\u001b[0m: process_texts() missing 1 required positional argument: 'top_n'"
|
757 |
]
|
758 |
}
|
759 |
],
|
|
|
767 |
"from transformers import BertTokenizer, BertModel\n",
|
768 |
"from sklearn.metrics.pairwise import cosine_similarity\n",
|
769 |
"import torch\n",
|
770 |
+
"from pymongo import MongoClient\n",
|
771 |
"import torch.nn.functional as F\n",
|
772 |
"\n",
|
773 |
"# BERT Tokenizer ve Model'i yükleyin\n",
|
|
|
780 |
" with open(file_path, 'r', encoding='utf-8') as file:\n",
|
781 |
" stop_words = [line.strip() for line in file if line.strip()]\n",
|
782 |
" return stop_words\n",
|
783 |
+
"#----------------------------------------------------------------------------------------------------\n",
|
784 |
"# Keywords çıkarma fonksiyonu\n",
|
785 |
+
"def extract_keywords_tfidf(corpus, stop_words_list,top_n=5):\n",
|
786 |
" \"\"\"TF-IDF ile anahtar kelimeleri çıkarır, stop words listesi ile birlikte kullanır.\"\"\"\n",
|
787 |
" vectorizer = TfidfVectorizer(stop_words=stop_words_list)\n",
|
788 |
" X = vectorizer.fit_transform(corpus)\n",
|
789 |
" feature_names = vectorizer.get_feature_names_out()\n",
|
790 |
+
" #sorted_keywords = [feature_names[i] for i in X.sum(axis=0).argsort()[0, ::-1]]\n",
|
791 |
+
" top_keywords_per_document = []\n",
|
792 |
+
"\n",
|
793 |
+
"\n",
|
794 |
+
" for row in X:\n",
|
795 |
+
" tfidf_scores = row.toarray().flatten()\n",
|
796 |
+
" top_indices = tfidf_scores.argsort()[-top_n:][::-1] # En yüksek n skoru bul\n",
|
797 |
+
" top_keywords = [feature_names[i] for i in top_indices]\n",
|
798 |
+
" top_keywords_per_document.append(top_keywords)\n",
|
799 |
"\n",
|
800 |
+
" return top_keywords_per_document\n",
|
801 |
+
"#-----------------------------------------------------------------------------------------------------\n",
|
802 |
"# Türkçe stop words dosyasını yükleyin\n",
|
803 |
+
"stop_words_list = load_stop_words('gereksiz_kelimeler.txt')\n",
|
804 |
+
"\n",
|
805 |
+
"#-----------------------------------------------------------------------------------------------------\n",
|
806 |
"# Define the text\n",
|
|
|
|
|
|
|
807 |
"\n",
|
808 |
+
"#for döngüsü içerisinde texts sütununu çek\n",
|
809 |
+
"#mongodb üzerinden combined_textleri çek\n",
|
810 |
"\n",
|
811 |
+
"def mongo_db_combined_texts(database_name='combined', collection_name='combined_output', host='localhost', port=27017):\n",
|
812 |
+
" client = MongoClient(f'mongodb://{host}:{port}/')\n",
|
813 |
+
" db = client[database_name]\n",
|
814 |
+
" collection = db[collection_name]\n",
|
815 |
+
" \n",
|
816 |
+
" # combined sütununu içeren bir liste döndür\n",
|
817 |
+
" combined_texts = [doc['combined'] for doc in collection.find({}, {'combined': 1, '_id': 0})]\n",
|
818 |
+
" \n",
|
819 |
+
" return combined_texts\n",
|
820 |
"\n",
|
821 |
+
"# Anahtar kelimeleri çıkar ve BERT ile embedding oluştur\n",
|
822 |
+
"def process_texts(combined_texts, stop_words_list,top_n):\n",
|
823 |
+
" results = []\n",
|
824 |
+
" \n",
|
825 |
+
" for text in combined_texts:\n",
|
826 |
+
" # Anahtar kelimeleri çıkar\n",
|
827 |
+
" keywords = extract_keywords_tfidf([text], stop_words_list)\n",
|
828 |
+
" \n",
|
829 |
+
" # BERT ile embedding oluştur\n",
|
830 |
+
" inputs = tokenizer(text, return_tensors='pt', truncation=True, max_length=512)\n",
|
831 |
+
" with torch.no_grad():\n",
|
832 |
+
" outputs = model(**inputs)\n",
|
833 |
+
" embeddings = outputs.last_hidden_state.mean(dim=1).squeeze()\n",
|
834 |
+
" \n",
|
835 |
+
" results.append({\n",
|
836 |
+
" 'text': text,\n",
|
837 |
+
" 'keywords': keywords,\n",
|
838 |
+
" 'embedding': embeddings\n",
|
839 |
+
" })\n",
|
840 |
+
" \n",
|
841 |
+
" return results\n",
|
842 |
"\n",
|
843 |
+
"# Örnek kullanım\n",
|
844 |
+
"combined_texts = mongo_db_combined_texts()\n",
|
845 |
+
"# Tüm metinleri işle\n",
|
846 |
+
"processed_texts = process_texts(combined_texts, stop_words_list,top_n=5)\n",
|
847 |
+
"# Top n anahtar kelimeyi almak için top_n değeri belirleyin\n",
|
848 |
+
"top_n = 5\n",
|
849 |
+
"top_keywords = extract_keywords_tfidf(corpus, stop_words_list, top_n=5)\n",
|
850 |
"\n",
|
851 |
+
"\"\"\"# Örnek olarak ilk iki metnin benzerliğini ölç\n",
|
852 |
+
"combined_texts = processed_texts[0]['embedding'].numpy()\n",
|
853 |
+
"embedding_2 = processed_texts[1]['embedding'].numpy()\n",
|
854 |
+
"similarity = cosine_similarity([embedding_1], [embedding_2])\n",
|
855 |
"\n",
|
856 |
+
"#print(f\"Metin 1 ve Metin 2 arasındaki benzerlik: {similarity[0][0]}\")\"\"\"\n",
|
|
|
857 |
"\n",
|
858 |
+
"for i, keywords in enumerate(top_keywords):\n",
|
859 |
+
" print(f\"Metin {i+1} için ilk {top_n} anahtar kelime: {keywords}\")\n",
|
860 |
+
"\n",
|
861 |
+
"\n",
|
862 |
+
"\n",
|
863 |
+
"\n",
|
864 |
+
"\n",
|
865 |
+
"\n",
|
866 |
+
"\n",
|
867 |
+
"#---------------------------------------------------------------------------------------------\n",
|
868 |
+
"texts = \"\"\"Peynir, çok büyük bir çeşitlilikteki aroma, tat, yapı ve şekle sahip bir grup süt ürünü için kullanılan genel isimdir.\n",
|
869 |
"\n",
|
870 |
+
"Etimoloji \n",
|
871 |
+
"Peynir, kelimesi modern Türkçeye Farsça sütten yapılmış manasına gelen panīr kelimesinden geçmiştir. İngilizceye ise Latince caseus dan gelmiştir. Bu kelimenin kökeninin Hint-Avrupa dillerinde yer alan mayalanmak-ekşimek manasına gelen kwat- kökünden geçtiği düşünülmektedir. Bu kelime diğer Cermen dillerinde de muhafaza edilmiştir. İspanyolca ve Portekizce de Latinceden almışlardır ve Malezya ve Endonezya da konuşulan dillere de keşifler vasıtasıyla geçirmişlerdir.\n",
|
872 |
+
"\n",
|
873 |
+
"Fransızca, İtalyanca ve Katalancaya ise yine aynı kökenden gelmiş olmasına ragmen, Romalılar tarafından askerlerin tüketimi için yapılan caseus formatus (kalıp peyniri) sözünün ikinci parçası olan kalıp manasına gelen formatusdan türeyen kelimeler kullanılmaya başlanmıştır. İspanyolcada \"queso\", Portekizcede \"queijo\", Almancada \"Käse\", Felemenkçede \"Kaas\", ve İngilizcede \"cheese\" İtalyancada \"formaggio\" olması yanında, Fransızcada \"fromage\", ve bu terim Katalancada \"formatge\" olmuştur.\n",
|
874 |
+
"\n",
|
875 |
+
"İlk kez Memluk Türkçesinde benir, penir, beynir şekillerinde görülür. Yazılı olarak en eski ÖzTürkçe karşılığı ise Kâşgarlı Mahmud tarafından yazılan Divânu Lügati't-Türk'te geçmektedir; udma ve udhıtma. Udhıtmak Uygur Türkçesi'nde uyutmak anlamındadır ve Udhıtma udhıttı, sütü uyutmak, uyumuş süt, peynir anlamında kullanılmıştır. Farklı Türk lehçelerinde farklı kelimeler kullanılmıştır: ağrımışık, sogut (Karluk), kurut, kesük, çökelek, bışlak.\n",
|
876 |
+
"\n",
|
877 |
+
" Tarihçe \n",
|
878 |
+
"Peynir kökeni oldukça eskiye dayanan bir yiyecektir. Peynir üretimine dair elde mevcut en eski arkeolojik bulgular M.Ö. 5000 yıllarına aittir ve günümüz Polonya'sında ortaya çıkarılmıştır. Çıkış noktaları Orta Asya, Orta Doğu ya da Avrupa olarak tahmin edilmektedir. Yaygınlaşmasının Roma İmparatorluğu zamanlarında olduğu düşünülür.\n",
|
879 |
+
"\n",
|
880 |
+
"İlk üretimi için önerilen tarih MÖ 8. binyıl (koyunun evcilleşitirildiği tarih) ile 9. binyıla kadar değişir. O zamanlar yiyecekleri saklayıcı özelliği nedeniyle hayvanın derisi ya da iç organları kullanılmaktaydı. Bu iç organlardan olan midede (işkembe) saklanan sütün buradaki enzimlerle (kültürle) mayalanması üzerine lor haline gelmesi peynirin ilk oluşumu hakkındaki teorilerden biridir. Buna benzer bir hikâyenin, bir tüccar Arap'ın peynir saklaması hakkında da farklı söylenişleri vardır.Vicki Reich, Cheese January 2002 Newsletter, Moscow Food Co-op Food Info. \n",
|
881 |
+
"\n",
|
882 |
+
"Bir başka teoriyse peynirin sütü tuzlamak ve basınç altında tutma sonucunda ortaya çıktığıdır. Hayvan midesinde bekletilen sütün değişimi üzerine de bu karışıma kasıtlı olarak maya eklenmiş olabilir.\n",
|
883 |
+
"\n",
|
884 |
+
"Peynir yapıcılığı ile ilgili ilk yazılı kaynak MÖ 2000'li yıllara, Mısır'daki mezar yazıtlarına dayanmaktadır. Antik zamanlarda yapılan peynirin ekşi ve tuzlu olduğu ve günümüz feta ve beyaz peynire benzediği tahmin edilmektedir.\n",
|
885 |
+
"\n",
|
886 |
+
"Avrupa'daki peynir üretiminde ise iklimden dolayı daha az tuz kullanılır. Daha az tuzlu ortamda daha çeşitli faydalı mikrop ve enzim yetişebilmesinden dolayı bu peynirler farklı ve ilginç tatlar içerirler.\n",
|
887 |
+
"\n",
|
888 |
+
" Modern çağ \n",
|
889 |
+
"\n",
|
890 |
+
"Avrupa kültürüyle birlikte yayılmasına kadar peynir, Doğu Asya kültürlerinde ve Kolomb öncesi Amerika'da neredeyse hiç duyulmamıştı ve Akdeniz altı Afrika'da yalnızca sınırlı bir kullanıma sahipti, esasen yalnızca Avrupa, Orta Doğu, Hint altkıtası ve ve bu kültürlerden etkilenen bölgelerde yaygın ve popülerdi. Ancak önce Avrupa emperyalizminin daha sonra da Avrupa-Amerikan kültürünün ve yemeklerinin yayılmasıyla birlikte peynir dünyada giderek daha fazla tanınmaya ve popülerleşmeye başladı.\n",
|
891 |
+
"\n",
|
892 |
+
"Peynirin endüstriyel üretimi için ilk fabrika 1815'te İsviçre'de açıldı ancak büyük ölçekli üretim ilk olarak Amerika Birleşik Devletleri'nde gerçek başarıyı yakaladı. Bu başarı genellikle montaj-hattı tarzında komşu çiftliklerden gelen sütü kullanarak 1851'de peynir yapmaya başlayan ve Roma, New York'tan mandıra çiftçisi olan Jesse Williams'a atfedilir. \n",
|
893 |
+
"Onlarca yıl içinde bu türden yüzlerce süt birlikleri ortaya çıktı.\n",
|
894 |
+
"\n",
|
895 |
+
"1860'larda seri üretilen peynir mayası üretimi başladı ve yüzyılın başında bilim adamları saf mikrobiyal kültürler üretiyorlardı. O zamandan önce, peynir yapımındaki bakteriler çevreden veya daha önceki bir partinin peynir altı suyunun geri dönüştürülmesinden geliyordu; saf kültürler, daha standart bir peynirin üretilebileceği anlamına geliyordu.\n",
|
896 |
+
"\n",
|
897 |
+
"Fabrika yapımı peynir İkinci Dünya Savaşı döneminde geleneksel peynir yapımını geride bıraktı ve fabrikalar o zamandan beri Amerika ve Avrupa'daki çoğu peynirin kaynağıdır.\n",
|
898 |
+
"\n",
|
899 |
+
"Birleşmiş Milletler Gıda ve Tarım Örgütü'ne göre 2004 yılı dünya üzerindeki peynir üretimi 18 milyon ton dur. Bu kahve tanesi, çay yaprağı kakao tanesi ve tütün yıllık üretiminden daha fazladır.\n",
|
900 |
+
"\n",
|
901 |
+
" Üretim \n",
|
902 |
+
"\n",
|
903 |
+
"2014 yılında tam inek sütünden yapılan peynir üretimi dünya’da 18.7 milyon tondu ve Amerika Birleşik Devletleri dünya toplamının %29'u (5.4 milyon ton) peynir üretirken onu büyük üreticiler olarak Almanya, Fransa ve İtalya izledi.\n",
|
904 |
+
"\n",
|
905 |
+
"İşlenmiş peynirde diğer 2014 dünya toplamları şunlardı:\n",
|
906 |
+
" yağsız inek sütünden, 2.4 milyon ton (845,500 ton ile Almanya liderdir)\n",
|
907 |
+
" keçi sütünden, 523,040 ton (110,750 ton ile Güney Sudan liderdir)\n",
|
908 |
+
" koyun sütünden, 680,302 ton (125,000 ton ile Yunanistan liderdir)\n",
|
909 |
+
" manda sütünden, 282,127 ton (254,000 ton Mısır liderdir)\n",
|
910 |
+
"\n",
|
911 |
+
"2015 yılında Almanya, Fransa, Hollanda ve İtalya ürettikleri peynirin %10-14'ünü ihraç etti. Amerika Birleşik Devletleri üretiminin çoğunu kendi iç pazarına sattığından ihracatı azdır (toplam inek sütü üretiminin %5.3'ü).\n",
|
912 |
+
"\n",
|
913 |
+
"2004 yılına göre en büyük peynir ihracatcısı (parasal değere göre) Fransa olup ikinci Almanya (miktar bakımından birinci olmasına rağmen). En üstteki on ihracatçıdan sadece İrlanda, Yeni Zelanda, Hollanda ve Avustralya ihracat için peynir üretir. Üretimlerinin ihracat yüzdeleri sırasıyla: %95, %90, %72 ve %65 dir. En büyük peynir ihracatçısı Fransa peynir üretiminin sadece %30'unu ihraç eder.\n",
|
914 |
+
"\n",
|
915 |
+
" Tüketim \n",
|
916 |
+
"Fransa, İzlanda, Finlandiya, Danimarka ve Almanya 2014 yılında kişi başına ortalama peynir tüketen ülkelerdi.\n",
|
917 |
+
"\n",
|
918 |
+
"{| class=\"wikitable\" style=\"width:30em;\"\n",
|
919 |
+
"! colspan=2|En çok peynir tüketen ülkeler - 2003(kişi başına yılık tüketim kg olarak)<ref>{{Web kaynağı |url=http://www.maison-du-lait.com/Scripts/public/stat.asp?Language=GB |başlık=CNIEL |erişimtarihi=20 Eylül 2008 |arşivurl=https://web.archive.org/web/20071006081314/http://www.maison-du-lait.com/Scripts/public/stat.asp?Language=GB |arşivtarihi=6 Ekim 2007 |ölüurl=evet }}</ref>\n",
|
920 |
+
"|-\n",
|
921 |
+
"| || align=\"right\" | 27.3\n",
|
922 |
+
"|-\n",
|
923 |
+
"| || align=\"right\" | 24.0\n",
|
924 |
+
"|-\n",
|
925 |
+
"| || align=\"right\" | 22.9\n",
|
926 |
+
"|-\n",
|
927 |
+
"| || align=\"right\" | 20.6\n",
|
928 |
+
"|-\n",
|
929 |
+
"| || align=\"right\" | 20.2\n",
|
930 |
+
"|-\n",
|
931 |
+
"| || align=\"right\" | 19.9\n",
|
932 |
+
"|-\n",
|
933 |
+
"| || align=\"right\" | 19.5\n",
|
934 |
+
"|-\n",
|
935 |
+
"| || align=\"right\" | 17.9\n",
|
936 |
+
"|}\n",
|
937 |
+
"\n",
|
938 |
+
" Yapımı \n",
|
939 |
+
"\n",
|
940 |
+
"Peynir, süt proteini kazeinin peynir mayası ve peynir kültürü ile pıhtılaştırılması ve bu pıhtıdan peynir altı suyunun ayrılmasıyla elde edilen fermente bir süt ürünüdür. Buna karşılık kazein yerine peynir altı suyu proteininden oluşan ricotta ve lor gibi peynirler ile peynir mayası içermeyen quark gibi peynirler de vardır. Sütün pH değerinin düşürülmesi için kullanılan peynir kültürü de peynir üretimi için zorunlu olmayıp sitrik asit ve sirke gibi asit içeren maddeler ile sübstitüte edilebilir.\n",
|
941 |
+
"\n",
|
942 |
+
"Peynir altı suyu ayrıldıktan sonra tuzlu peynirler için tuzlama aşamasına gelinir. Tuzlama, peynirin yüzeyine kuru tuzlama şeklinde veya peynir salamuraya daldırılarak yapılabilir. Peynir altı suyunun tekrar 90 C°'ye kaynatılması ile lor peynir elde edilir.\n",
|
943 |
+
"\n",
|
944 |
+
"Takip eden basamak olgunlaştırmadır; peynir taze olarak tüketilebileceği gibi belirli bir olgunlaştırma periyodunu takiben de tüketilebilir.\n",
|
945 |
+
"Bu üretim basamaklarına ait teknik parametrelere bağlı olarak çok geniş bir çeşitlilikte peynirler elde edilir.\n",
|
946 |
+
"\n",
|
947 |
+
"Diğer fermente süt ürünleri gibi peynir de canlı organizmalar içerebilir. Raf ömrü boyunca peynirin duyusal, yapısal ve kimyasal özelliklerinde çeşitli değişiklikler görülebilir. Bu değişikliklerin en az olması için peynirin genellikle 6-8 °C’lik sıcaklıklarda tutulması gereklidir.\n",
|
948 |
+
"\n",
|
949 |
+
"Soğuk iklimlerde yaşayanlar için sıcaklığı 6-8 °C civarında, nem oranı sabit ve havadar kilerler peynir saklamak için idealdir. Ancak bu imkânın olmadığı yerde peynir buzdolabının alt raflarında ve kapalı şekilde saklanmalıdır.\n",
|
950 |
+
"\n",
|
951 |
+
" Çeşitleri \n",
|
952 |
+
"\n",
|
953 |
+
"Türkiye'de tüketimi en yaygın olan peynirler; beyaz peynir, deri peyniri ve kaşar peyniri olmakla birlikte, yöresel peynirler yönünden de hayli çeşitlilik gösterir. Bunlardan bazıları: \n",
|
954 |
+
"\n",
|
955 |
+
" Beslenme ve sağlık \n",
|
956 |
+
"Peynirin besin değeri çok değişkendir. Süzme peynir %4 yağ ve %11 protein içerebilirken bazı peynir altı suyu peynirleri %15 yağ ve %11 protein ve üçlü krem peynirler %36 yağ ve %7 protein içerir. Genellikle peynir, zengin bir kalsiyum, protein, fosfor, sodyum ve doymuş yağ (Günlük Değer'in %20'si veya daha fazlası) kaynağıdır. 28 gramlık (bir ons) porsiyon çedar peyniri yaklaşık protein ve 202 miligram kalsiyum içerir. Besinsel olarak peynir esasında konsantre süttür ancak kültür ve yaşlandırma süreçlerince değiştirilir: bu kadar proteini sağlamak için, suda çözünen vitamin ve minerallerin miktarları değişmesine rağmen, yaklaşık süt ve buna eşit kalsiyum gerekir.\n",
|
957 |
+
"\n",
|
958 |
+
"Sağlıklı hayvan sütlerinden sağlıklı şartlarda üretilen peynirin insan beslenmesine protein, kalsiyum, mineraller ve diğer besin elemanlarının temin edilmesinde ve sağlıklı yaşamın sürdürülmesinde önemli katkıları bulunur. Ancak çiğ sütten yapılan peynirlerden Brucella ve Listeria gibi zoonotik enfeksiyonların tüketenlere bulaşması, ayrıca uygun saklama koşullarına uyulmaması dolayısıyla bakteri üremesine bağlı akut barsak enfeksiyonlarının gelişmesi mümkündür. Tuzlu peynir tüketimi hipertansiyon hastalarında risk oluşturabilir.\n",
|
959 |
+
"\n",
|
960 |
+
"Küflü peynir tüketimi\n",
|
961 |
+
"\n",
|
962 |
+
"Bazı (yumuşak tip) küflü peynir çeşitlerinin listeria riski dolayısıyla hamilelerde tüketiminin uygun olmadığı, pişirilerek yenmesi durumunda bu sakıncanın ortadan kalkmış olacağı NHS tarafından ifade edilmektedir. Konya'da yöresel olarak tüketilen küflü peynir çeşitleri üzerinde akademik yapılan bir çalışma ile bu peynirlerden elde edilen küf cinsleri, bunların primer ve sekonder metabolitleri, ürettikleri mikotoksinler, aspergillus tipi küflerde ise aflatoksinler gibi kanser yapıcı toksinlerin mevcudiyeti ve zararları ele alınmıştır. Küflü peynirler üzerinde yapılan bir başka çalışmada ise özellikle siyah, beyaz ve kırmızı renkte küf içeren peynir çeşitlerinde aflatoksin miktarının yüksekliğine dikkat çekilmiştir. Bazı mikotoksinlerin DNA hasarı (mutajen) ve fetüs üzerinde sakatlık oluşturma (teratojen) kapasitelerinin olduğu bilinmektedir.http://www.academia.edu/3251581/DUNYADA_VE_TURKIYEDE_INSAN_SAGLIGINI_TEHDIT_EDEN_MIKOTOKSINLERhttp://informahealthcare.com/doi/abs/10.3109/15569549909009258\n",
|
963 |
+
"\n",
|
964 |
+
" Peynirle ilgili kitaplar \n",
|
965 |
+
" \"Süt Uyuyunca - Türkiye Peynirleri\", Artun Ünsal, Yapı Kredi Yayınları, İstanbul, 1. Baskı 1997.\n",
|
966 |
+
" \"Türkiye'nin Peynir Hazineleri* \" (Özgün adı: The Treasury of Turkish Cheeses''), Suzanne Swan, Boyut Yayın Grubu, 2005.\n",
|
967 |
+
" \"Yurdumuz Peynirlerini Olgunlaştıran Mikroplar ve Anzimleri\", Mehmet Karasoy, Ankara Üniversitesi Veteriner Fakültesi Yay. 1955.\n",
|
968 |
+
" \"Her Yönüyle Peynir\", Mehmet Demirci, Hasad Yayıncılık.\n",
|
969 |
+
" \"Türkiye'de Yapılan Muhtelif Tip Peynirler ve Özellikleri\", Dilek Uraz - Abdi Karacabey, Ankara, 1974.\n",
|
970 |
+
" \"Peynir\", Rauf Cemil Adam, Ege Üniv. Matbaası, 1974.\n",
|
971 |
+
" \"Peynir Teknolojisi Bibliyografyası\", Tümer Uraz, Ankara Üniv.\n",
|
972 |
+
" \"Sütçülük, Tereyağcılık ve Peynircilik Sanatları'\" (Eski Türkçe), Onnik İhsan, Matbaa-i Âmire, İstanbul, 1915.\n",
|
973 |
+
"\n",
|
974 |
+
"Ayrıca bakınız \n",
|
975 |
+
" Mandıra ürünü\n",
|
976 |
+
"\n",
|
977 |
+
"Notlar \n",
|
978 |
+
"\n",
|
979 |
+
" \n",
|
980 |
+
"Süt ürünleri\n",
|
981 |
+
"Farsçadan Türkçeye geçen sözcükler\"\"\"\n",
|
982 |
+
"\n",
|
983 |
+
"\n",
|
984 |
+
"# Tek bir metin üzerinde çalışıyorsanız, bunu bir liste olarak verin\n",
|
985 |
+
"#corpus = [texts]\n",
|
986 |
+
"\n",
|
987 |
+
"\n",
|
988 |
+
"# Anahtar kelimeleri düz bir listeye dönüştür\n",
|
989 |
+
"#--------------------- tanımlanıp çekilecek tfidf_keywords = tfidf_keywords_array.flatten().tolist()\n",
|
990 |
"# TF-IDF anahtar kelimelerini çıkar\n",
|
991 |
+
"#tfidf_keywords_extract= extract_keywords_tfidf(corpus, stop_words_list)\n",
|
|
|
992 |
"\n",
|
993 |
+
"#print(\"TF-IDF Keywords:\",tfidf_keywords_extract )\n",
|
994 |
+
"\n"
|
995 |
+
]
|
996 |
+
},
|
997 |
+
{
|
998 |
+
"cell_type": "code",
|
999 |
+
"execution_count": 23,
|
1000 |
+
"metadata": {},
|
1001 |
+
"outputs": [
|
1002 |
+
{
|
1003 |
+
"name": "stdout",
|
1004 |
+
"output_type": "stream",
|
1005 |
+
"text": [
|
1006 |
+
"TF-IDF Keywords: ['peynir', 'peynirin', 'peynirler', 'olarak', 'ton', 'süt', 'avrupa', 'right', 'align', 'yapılan', 'altı', 'üretimi', 'protein', 'büyük', 'elde', 'amerika', 'almanya', 'sütünden', 'fransa', 'dünya', 'farklı', 'küflü', 'ilk', 'kalsiyum', 'çok', 'türkiye', 'peyniri', 'yağ', 'gelen', '20', 'sütü', 'tüketimi', 'tuzlu', 'milyon', 'liderdir', 'olan', 'diğer', 'com', 'doğu', 'daki', 'beyaz', 'devletleri', '2014', 'üzerinde', 'web', 'mayası', 'eski', 'manasına', 'olduğu', 'sağlıklı', 'ortaya', 'www', 'veya', 'tuzlama', 'sütün', 'üretiminin', 'suyu', 'suyunun', 'orta', 'tarafından', 'ankara', 'üretim', 'birleşik', 'lor', 'inek', 'iç', 'göre', 'edilmektedir', 'http', 'üniv', 'üzerine', 'ürünü', '11', '10', '90', '000', 'du', 'dillerinde', 'çeşitli', 'çeşitleri', 'caseus', 'cheese', 'dolayısıyla', 'asit', 'başına', 'asp', 'asya', 'ayrıca', 'üretilen', 'başladı', 'başka', 'besin', 'kaynağıdır', 'kelimeler', 'kalıp', 'yöresel', 'içeren', 'hint', 'ikinci', 'zamandan', 'hollanda', 'günümüz', 'food', 'fermente', 'gb', 'geliyordu', 'fabrika', 'edilen', 'olması', 'olmasına', 'yaygın', 'yapımı', 'olmadığı', 'mısır', 'mö', 'modern', 'maison', 'mandıra', 'nde', 'lk', 'listeria', 'language', 'lait', 'mehmet', 'kullanılmıştır', 'kişi', 'kültürü', 'küf', 'kültürler', 'kullanılan', 'hayvan', 'ilgili', 'içerir', 'ihracat', 'ihraç', 'roma', 'yaklaşık', 'yalnızca', 'peynirleri', 'peynirlerden', 'yapı', 'uraz', 'uyutmak', 'uygun', 'vardır', 'rağmen', 'stanbul', 'scripts', 'yazılı', 'ref', 'proteini', 'public', 'saf', 'te', 'stat', 'sütten', 'türk', 'udhıttı', 'udhıtmak', 'tütün', 'şeklinde', 'üretiyorlardı', 'üretirken', 'üretir', 'üretimlerinin', 'üretimine', 'üretiminden', 'üretiminde', '1860', '1851', '1815']\n"
|
1007 |
+
]
|
1008 |
+
}
|
1009 |
+
],
|
1010 |
+
"source": [
|
1011 |
+
"import numpy as np\n",
|
1012 |
+
"\n",
|
1013 |
+
"tfidf_keywords_array = np.array([\n",
|
1014 |
+
" ['peynir', 'peynirin', 'peynirler', 'olarak', 'ton', 'süt',\n",
|
1015 |
+
" 'avrupa', 'right', 'align', 'yapılan', 'altı', 'üretimi',\n",
|
1016 |
+
" 'protein', 'büyük', 'elde', 'amerika', 'almanya', 'sütünden',\n",
|
1017 |
+
" 'fransa', 'dünya', 'farklı', 'küflü', 'ilk', 'kalsiyum', 'çok',\n",
|
1018 |
+
" 'türkiye', 'peyniri', 'yağ', 'gelen', '20', 'sütü', 'tüketimi',\n",
|
1019 |
+
" 'tuzlu', 'milyon', 'liderdir', 'olan', 'diğer', 'com', 'doğu',\n",
|
1020 |
+
" 'daki', 'beyaz', 'devletleri', '2014', 'üzerinde', 'web',\n",
|
1021 |
+
" 'mayası', 'eski', 'manasına', 'olduğu', 'sağlıklı', 'ortaya',\n",
|
1022 |
+
" 'www', 'veya', 'tuzlama', 'sütün', 'üretiminin', 'suyu',\n",
|
1023 |
+
" 'suyunun', 'orta', 'tarafından', 'ankara', 'üretim', 'birleşik',\n",
|
1024 |
+
" 'lor', 'inek', 'iç', 'göre', 'edilmektedir', 'http', 'üniv',\n",
|
1025 |
+
" 'üzerine', 'ürünü', '11', '10', '90', '000', 'du', 'dillerinde',\n",
|
1026 |
+
" 'çeşitli', 'çeşitleri', 'caseus', 'cheese', 'dolayısıyla',\n",
|
1027 |
+
" 'asit', 'başına', 'asp', 'asya', 'ayrıca', 'üretilen', 'başladı',\n",
|
1028 |
+
" 'başka', 'besin', 'kaynağıdır', 'kelimeler', 'kalıp', 'yöresel',\n",
|
1029 |
+
" 'içeren', 'hint', 'ikinci', 'zamandan', 'hollanda', 'günümüz',\n",
|
1030 |
+
" 'food', 'fermente', 'gb', 'geliyordu', 'fabrika', 'edilen',\n",
|
1031 |
+
" 'olması', 'olmasına', 'yaygın', 'yapımı', 'olmadığı', 'mısır',\n",
|
1032 |
+
" 'mö', 'modern', 'maison', 'mandıra', 'nde', 'lk', 'listeria',\n",
|
1033 |
+
" 'language', 'lait', 'mehmet', 'kullanılmıştır', 'kişi',\n",
|
1034 |
+
" 'kültürü', 'küf', 'kültürler', 'kullanılan', 'hayvan', 'ilgili',\n",
|
1035 |
+
" 'içerir', 'ihracat', 'ihraç', 'roma', 'yaklaşık', 'yalnızca',\n",
|
1036 |
+
" 'peynirleri', 'peynirlerden', 'yapı', 'uraz', 'uyutmak', 'uygun',\n",
|
1037 |
+
" 'vardır', 'rağmen', 'stanbul', 'scripts', 'yazılı', 'ref',\n",
|
1038 |
+
" 'proteini', 'public', 'saf', 'te', 'stat', 'sütten', 'türk',\n",
|
1039 |
+
" # Daha fazla eleman ekleyin\n",
|
1040 |
+
" 'udhıttı', 'udhıtmak', 'tütün', 'şeklinde', 'üretiyorlardı',\n",
|
1041 |
+
" 'üretirken', 'üretir', 'üretimlerinin', 'üretimine',\n",
|
1042 |
+
" 'üretiminden', 'üretiminde', '1860', '1851', '1815']\n",
|
1043 |
+
"], dtype=object)\n",
|
1044 |
+
"\n",
|
1045 |
+
"# Anahtar kelimeleri düz bir listeye dönüştür\n",
|
1046 |
+
"tfidf_keywords = tfidf_keywords_array.flatten().tolist()\n",
|
1047 |
+
"\n",
|
1048 |
+
"# Sonuçları yazdır\n",
|
1049 |
+
"print(\"TF-IDF Keywords:\", tfidf_keywords)\n"
|
1050 |
+
]
|
1051 |
+
},
|
1052 |
+
{
|
1053 |
+
"cell_type": "code",
|
1054 |
+
"execution_count": 22,
|
1055 |
+
"metadata": {},
|
1056 |
+
"outputs": [
|
1057 |
+
{
|
1058 |
+
"name": "stdout",
|
1059 |
+
"output_type": "stream",
|
1060 |
+
"text": [
|
1061 |
+
"Keyword: peynir, Similarity: 0.5207716926048784\n",
|
1062 |
+
"Keyword: peynirin, Similarity: 0.1136229147501553\n",
|
1063 |
+
"Keyword: peynirler, Similarity: 0.0946857622917961\n",
|
1064 |
+
"Keyword: olarak, Similarity: 0.0946857622917961\n",
|
1065 |
+
"Keyword: ton, Similarity: 0.0946857622917961\n"
|
1066 |
+
]
|
1067 |
+
}
|
1068 |
+
],
|
1069 |
+
"source": [
|
1070 |
+
"from sklearn.feature_extraction.text import TfidfVectorizer\n",
|
1071 |
+
"from sklearn.metrics.pairwise import cosine_similarity\n",
|
1072 |
+
"\n",
|
1073 |
+
"# Text ve keywords\n",
|
1074 |
+
"text = \"\"\"Peynir, çok büyük bir çeşitlilikteki aroma, tat, yapı ve şekle sahip bir grup süt ürünü için kullanılan genel isimdir.\n",
|
1075 |
+
"\n",
|
1076 |
+
"Etimoloji \n",
|
1077 |
+
"Peynir, kelimesi modern Türkçeye Farsça sütten yapılmış manasına gelen panīr kelimesinden geçmiştir. İngilizceye ise Latince caseus dan gelmiştir. Bu kelimenin kökeninin Hint-Avrupa dillerinde yer alan mayalanmak-ekşimek manasına gelen kwat- kökünden geçtiği düşünülmektedir. Bu kelime diğer Cermen dillerinde de muhafaza edilmiştir. İspanyolca ve Portekizce de Latinceden almışlardır ve Malezya ve Endonezya da konuşulan dillere de keşifler vasıtasıyla geçirmişlerdir.\n",
|
1078 |
+
"\n",
|
1079 |
+
"Fransızca, İtalyanca ve Katalancaya ise yine aynı kökenden gelmiş olmasına ragmen, Romalılar tarafından askerlerin tüketimi için yapılan caseus formatus (kalıp peyniri) sözünün ikinci parçası olan kalıp manasına gelen formatusdan türeyen kelimeler kullanılmaya başlanmıştır. İspanyolcada \"queso\", Portekizcede \"queijo\", Almancada \"Käse\", Felemenkçede \"Kaas\", ve İngilizcede \"cheese\" İtalyancada \"formaggio\" olması yanında, Fransızcada \"fromage\", ve bu terim Katalancada \"formatge\" olmuştur.\n",
|
1080 |
+
"\n",
|
1081 |
+
"İlk kez Memluk Türkçesinde benir, penir, beynir şekillerinde görülür. Yazılı olarak en eski ÖzTürkçe karşılığı ise Kâşgarlı Mahmud tarafından yazılan Divânu Lügati't-Türk'te geçmektedir; udma ve udhıtma. Udhıtmak Uygur Türkçesi'nde uyutmak anlamındadır ve Udhıtma udhıttı, sütü uyutmak, uyumuş süt, peynir anlamında kullanılmıştır. Farklı Türk lehçelerinde farklı kelimeler kullanılmıştır: ağrımışık, sogut (Karluk), kurut, kesük, çökelek, bışlak.\n",
|
1082 |
+
"\n",
|
1083 |
+
" Tarihçe \n",
|
1084 |
+
"Peynir kökeni oldukça eskiye dayanan bir yiyecektir. Peynir üretimine dair elde mevcut en eski arkeolojik bulgular M.Ö. 5000 yıllarına aittir ve günümüz Polonya'sında ortaya çıkarılmıştır. Çıkış noktaları Orta Asya, Orta Doğu ya da Avrupa olarak tahmin edilmektedir. Yaygınlaşmasının Roma İmparatorluğu zamanlarında olduğu düşünülür.\n",
|
1085 |
+
"\n",
|
1086 |
+
"İlk üretimi için önerilen tarih MÖ 8. binyıl (koyunun evcilleşitirildiği tarih) ile 9. binyıla kadar değişir. O zamanlar yiyecekleri saklayıcı özelliği nedeniyle hayvanın derisi ya da iç organları kullanılmaktaydı. Bu iç organlardan olan midede (işkembe) saklanan sütün buradaki enzimlerle (kültürle) mayalanması üzerine lor haline gelmesi peynirin ilk oluşumu hakkındaki teorilerden biridir. Buna benzer bir hikâyenin, bir tüccar Arap'ın peynir saklaması hakkında da farklı söylenişleri vardır.Vicki Reich, Cheese January 2002 Newsletter, Moscow Food Co-op Food Info. \n",
|
1087 |
+
"\n",
|
1088 |
+
"Bir başka teoriyse peynirin sütü tuzlamak ve basınç altında tutma sonucunda ortaya çıktığıdır. Hayvan midesinde bekletilen sütün değişimi üzerine de bu karışıma kasıtlı olarak maya eklenmiş olabilir.\n",
|
1089 |
+
"\n",
|
1090 |
+
"Peynir yapıcılığı ile ilgili ilk yazılı kaynak MÖ 2000'li yıllara, Mısır'daki mezar yazıtlarına dayanmaktadır. Antik zamanlarda yapılan peynirin ekşi ve tuzlu olduğu ve günümüz feta ve beyaz peynire benzediği tahmin edilmektedir.\n",
|
1091 |
+
"\n",
|
1092 |
+
"Avrupa'daki peynir üretiminde ise iklimden dolayı daha az tuz kullanılır. Daha az tuzlu ortamda daha çeşitli faydalı mikrop ve enzim yetişebilmesinden dolayı bu peynirler farklı ve ilginç tatlar içerirler.\n",
|
1093 |
+
"\n",
|
1094 |
+
" Modern çağ \n",
|
1095 |
+
"\n",
|
1096 |
+
"Avrupa kültürüyle birlikte yayılmasına kadar peynir, Doğu Asya kültürlerinde ve Kolomb öncesi Amerika'da neredeyse hiç duyulmamıştı ve Akdeniz altı Afrika'da yalnızca sınırlı bir kullanıma sahipti, esasen yalnızca Avrupa, Orta Doğu, Hint altkıtası ve ve bu kültürlerden etkilenen bölgelerde yaygın ve popülerdi. Ancak önce Avrupa emperyalizminin daha sonra da Avrupa-Amerikan kültürünün ve yemeklerinin yayılmasıyla birlikte peynir dünyada giderek daha fazla tanınmaya ve popülerleşmeye başladı.\n",
|
1097 |
+
"\n",
|
1098 |
+
"Peynirin endüstriyel üretimi için ilk fabrika 1815'te İsviçre'de açıldı ancak büyük ölçekli üretim ilk olarak Amerika Birleşik Devletleri'nde gerçek başarıyı yakaladı. Bu başarı genellikle montaj-hattı tarzında komşu çiftliklerden gelen sütü kullanarak 1851'de peynir yapmaya başlayan ve Roma, New York'tan mandıra çiftçisi olan Jesse Williams'a atfedilir. \n",
|
1099 |
+
"Onlarca yıl içinde bu türden yüzlerce süt birlikleri ortaya çıktı.\n",
|
1100 |
+
"\n",
|
1101 |
+
"1860'larda seri üretilen peynir mayası üretimi başladı ve yüzyılın başında bilim adamları saf mikrobiyal kültürler üretiyorlardı. O zamandan önce, peynir yapımındaki bakteriler çevreden veya daha önceki bir partinin peynir altı suyunun geri dönüştürülmesinden geliyordu; saf kültürler, daha standart bir peynirin üretilebileceği anlamına geliyordu.\n",
|
1102 |
+
"\n",
|
1103 |
+
"Fabrika yapımı peynir İkinci Dünya Savaşı döneminde geleneksel peynir yapımını geride bıraktı ve fabrikalar o zamandan beri Amerika ve Avrupa'daki çoğu peynirin kaynağıdır.\n",
|
1104 |
+
"\n",
|
1105 |
+
"Birleşmiş Milletler Gıda ve Tarım Örgütü'ne göre 2004 yılı dünya üzerindeki peynir üretimi 18 milyon ton dur. Bu kahve tanesi, çay yaprağı kakao tanesi ve tütün yıllık üretiminden daha fazladır.\n",
|
1106 |
+
"\n",
|
1107 |
+
" Üretim \n",
|
1108 |
+
"\n",
|
1109 |
+
"2014 yılında tam inek sütünden yapılan peynir üretimi dünya’da 18.7 milyon tondu ve Amerika Birleşik Devletleri dünya toplamının %29'u (5.4 milyon ton) peynir üretirken onu büyük üreticiler olarak Almanya, Fransa ve İtalya izledi.\n",
|
1110 |
+
"\n",
|
1111 |
+
"İşlenmiş peynirde diğer 2014 dünya toplamları şunlardı:\n",
|
1112 |
+
" yağsız inek sütünden, 2.4 milyon ton (845,500 ton ile Almanya liderdir)\n",
|
1113 |
+
" keçi sütünden, 523,040 ton (110,750 ton ile Güney Sudan liderdir)\n",
|
1114 |
+
" koyun sütünden, 680,302 ton (125,000 ton ile Yunanistan liderdir)\n",
|
1115 |
+
" manda sütünden, 282,127 ton (254,000 ton Mısır liderdir)\n",
|
1116 |
+
"\n",
|
1117 |
+
"2015 yılında Almanya, Fransa, Hollanda ve İtalya ürettikleri peynirin %10-14'ünü ihraç etti. Amerika Birleşik Devletleri üretiminin çoğunu kendi iç pazarına sattığından ihracatı azdır (toplam inek sütü üretiminin %5.3'ü).\n",
|
1118 |
+
"\n",
|
1119 |
+
"2004 yılına göre en büyük peynir ihracatcısı (parasal değere göre) Fransa olup ikinci Almanya (miktar bakımından birinci olmasına rağmen). En üstteki on ihracatçıdan sadece İrlanda, Yeni Zelanda, Hollanda ve Avustralya ihracat için peynir üretir. Üretimlerinin ihracat yüzdeleri sırasıyla: %95, %90, %72 ve %65 dir. En büyük peynir ihracatçısı Fransa peynir üretiminin sadece %30'unu ihraç eder.\n",
|
1120 |
+
"\n",
|
1121 |
+
" Tüketim \n",
|
1122 |
+
"Fransa, İzlanda, Finlandiya, Danimarka ve Almanya 2014 yılında kişi başına ortalama peynir tüketen ülkelerdi.\n",
|
1123 |
+
"\n",
|
1124 |
+
"{| class=\"wikitable\" style=\"width:30em;\"\n",
|
1125 |
+
"! colspan=2|En çok peynir tüketen ülkeler - 2003(kişi başına yılık tüketim kg olarak)<ref>{{Web kaynağı |url=http://www.maison-du-lait.com/Scripts/public/stat.asp?Language=GB |başlık=CNIEL |erişimtarihi=20 Eylül 2008 |arşivurl=https://web.archive.org/web/20071006081314/http://www.maison-du-lait.com/Scripts/public/stat.asp?Language=GB |arşivtarihi=6 Ekim 2007 |ölüurl=evet }}</ref>\n",
|
1126 |
+
"|-\n",
|
1127 |
+
"| || align=\"right\" | 27.3\n",
|
1128 |
+
"|-\n",
|
1129 |
+
"| || align=\"right\" | 24.0\n",
|
1130 |
+
"|-\n",
|
1131 |
+
"| || align=\"right\" | 22.9\n",
|
1132 |
+
"|-\n",
|
1133 |
+
"| || align=\"right\" | 20.6\n",
|
1134 |
+
"|-\n",
|
1135 |
+
"| || align=\"right\" | 20.2\n",
|
1136 |
+
"|-\n",
|
1137 |
+
"| || align=\"right\" | 19.9\n",
|
1138 |
+
"|-\n",
|
1139 |
+
"| || align=\"right\" | 19.5\n",
|
1140 |
+
"|-\n",
|
1141 |
+
"| || align=\"right\" | 17.9\n",
|
1142 |
+
"|}\n",
|
1143 |
+
"\n",
|
1144 |
+
" Yapımı \n",
|
1145 |
+
"\n",
|
1146 |
+
"Peynir, süt proteini kazeinin peynir mayası ve peynir kültürü ile pıhtılaştırılması ve bu pıhtıdan peynir altı suyunun ayrılmasıyla elde edilen fermente bir süt ürünüdür. Buna karşılık kazein yerine peynir altı suyu proteininden oluşan ricotta ve lor gibi peynirler ile peynir mayası içermeyen quark gibi peynirler de vardır. Sütün pH değerinin düşürülmesi için kullanılan peynir kültürü de peynir üretimi için zorunlu olmayıp sitrik asit ve sirke gibi asit içeren maddeler ile sübstitüte edilebilir.\n",
|
1147 |
+
"\n",
|
1148 |
+
"Peynir altı suyu ayrıldıktan sonra tuzlu peynirler için tuzlama aşamasına gelinir. Tuzlama, peynirin yüzeyine kuru tuzlama şeklinde veya peynir salamuraya daldırılarak yapılabilir. Peynir altı suyunun tekrar 90 C°'ye kaynatılması ile lor peynir elde edilir.\n",
|
1149 |
+
"\n",
|
1150 |
+
"Takip eden basamak olgunlaştırmadır; peynir taze olarak tüketilebileceği gibi belirli bir olgunlaştırma periyodunu takiben de tüketilebilir.\n",
|
1151 |
+
"Bu üretim basamaklarına ait teknik parametrelere bağlı olarak çok geniş bir çeşitlilikte peynirler elde edilir.\n",
|
1152 |
+
"\n",
|
1153 |
+
"Diğer fermente süt ürünleri gibi peynir de canlı organizmalar içerebilir. Raf ömrü boyunca peynirin duyusal, yapısal ve kimyasal özelliklerinde çeşitli değişiklikler görülebilir. Bu değişikliklerin en az olması için peynirin genellikle 6-8 °C’lik sıcaklıklarda tutulması gereklidir.\n",
|
1154 |
+
"\n",
|
1155 |
+
"Soğuk iklimlerde yaşayanlar için sıcaklığı 6-8 °C civarında, nem oranı sabit ve havadar kilerler peynir saklamak için idealdir. Ancak bu imkânın olmadığı yerde peynir buzdolabının alt raflarında ve kapalı şekilde saklanmalıdır.\n",
|
1156 |
+
"\n",
|
1157 |
+
" Çeşitleri \n",
|
1158 |
+
"\n",
|
1159 |
+
"Türkiye'de tüketimi en yaygın olan peynirler; beyaz peynir, deri peyniri ve kaşar peyniri olmakla birlikte, yöresel peynirler yönünden de hayli çeşitlilik gösterir. Bunlardan bazıları: \n",
|
1160 |
+
"\n",
|
1161 |
+
" Beslenme ve sağlık \n",
|
1162 |
+
"Peynirin besin değeri çok değişkendir. Süzme peynir %4 yağ ve %11 protein içerebilirken bazı peynir altı suyu peynirleri %15 yağ ve %11 protein ve üçlü krem peynirler %36 yağ ve %7 protein içerir. Genellikle peynir, zengin bir kalsiyum, protein, fosfor, sodyum ve doymuş yağ (Günlük Değer'in %20'si veya daha fazlası) kaynağıdır. 28 gramlık (bir ons) porsiyon çedar peyniri yaklaşık protein ve 202 miligram kalsiyum içerir. Besinsel olarak peynir esasında konsantre süttür ancak kültür ve yaşlandırma süreçlerince değiştirilir: bu kadar proteini sağlamak için, suda çözünen vitamin ve minerallerin miktarları değişmesine rağmen, yaklaşık süt ve buna eşit kalsiyum gerekir.\n",
|
1163 |
+
"\n",
|
1164 |
+
"Sağlıklı hayvan sütlerinden sağlıklı şartlarda üretilen peynirin insan beslenmesine protein, kalsiyum, mineraller ve diğer besin elemanlarının temin edilmesinde ve sağlıklı yaşamın sürdürülmesinde önemli katkıları bulunur. Ancak çiğ sütten yapılan peynirlerden Brucella ve Listeria gibi zoonotik enfeksiyonların tüketenlere bulaşması, ayrıca uygun saklama koşullarına uyulmaması dolayısıyla bakteri üremesine bağlı akut barsak enfeksiyonlarının gelişmesi mümkündür. Tuzlu peynir tüketimi hipertansiyon hastalarında risk oluşturabilir.\n",
|
1165 |
+
"\n",
|
1166 |
+
"Küflü peynir tüketimi\n",
|
1167 |
+
"\n",
|
1168 |
+
"Bazı (yumuşak tip) küflü peynir çeşitlerinin listeria riski dolayısıyla hamilelerde tüketiminin uygun olmadığı, pişirilerek yenmesi durumunda bu sakıncanın ortadan kalkmış olacağı NHS tarafından ifade edilmektedir. Konya'da yöresel olarak tüketilen küflü peynir çeşitleri üzerinde akademik yapılan bir çalışma ile bu peynirlerden elde edilen küf cinsleri, bunların primer ve sekonder metabolitleri, ürettikleri mikotoksinler, aspergillus tipi küflerde ise aflatoksinler gibi kanser yapıcı toksinlerin mevcudiyeti ve zararları ele alınmıştır. Küflü peynirler üzerinde yapılan bir başka çalışmada ise özellikle siyah, beyaz ve kırmızı renkte küf içeren peynir çeşitlerinde aflatoksin miktarının yüksekliğine dikkat çekilmiştir. Bazı mikotoksinlerin DNA hasarı (mutajen) ve fetüs üzerinde sakatlık oluşturma (teratojen) kapasitelerinin olduğu bilinmektedir.http://www.academia.edu/3251581/DUNYADA_VE_TURKIYEDE_INSAN_SAGLIGINI_TEHDIT_EDEN_MIKOTOKSINLERhttp://informahealthcare.com/doi/abs/10.3109/15569549909009258\n",
|
1169 |
+
"\n",
|
1170 |
+
" Peynirle ilgili kitaplar \n",
|
1171 |
+
" \"Süt Uyuyunca - Türkiye Peynirleri\", Artun Ünsal, Yapı Kredi Yayınları, İstanbul, 1. Baskı 1997.\n",
|
1172 |
+
" \"Türkiye'nin Peynir Hazineleri* \" (Özgün adı: The Treasury of Turkish Cheeses''), Suzanne Swan, Boyut Yayın Grubu, 2005.\n",
|
1173 |
+
" \"Yurdumuz Peynirlerini Olgunlaştıran Mikroplar ve Anzimleri\", Mehmet Karasoy, Ankara Üniversitesi Veteriner Fakültesi Yay. 1955.\n",
|
1174 |
+
" \"Her Yönüyle Peynir\", Mehmet Demirci, Hasad Yayıncılık.\n",
|
1175 |
+
" \"Türkiye'de Yapılan Muhtelif Tip Peynirler ve Özellikleri\", Dilek Uraz - Abdi Karacabey, Ankara, 1974.\n",
|
1176 |
+
" \"Peynir\", Rauf Cemil Adam, Ege Üniv. Matbaası, 1974.\n",
|
1177 |
+
" \"Peynir Teknolojisi Bibliyografyası\", Tümer Uraz, Ankara Üniv.\n",
|
1178 |
+
" \"Sütçülük, Tereyağcılık ve Peynircilik Sanatları'\" (Eski Türkçe), Onnik İhsan, Matbaa-i Âmire, İstanbul, 1915.\n",
|
1179 |
+
"\n",
|
1180 |
+
"Ayrıca bakınız \n",
|
1181 |
+
" Mandıra ürünü\n",
|
1182 |
+
"\n",
|
1183 |
+
"Notlar \n",
|
1184 |
+
"\n",
|
1185 |
+
" \n",
|
1186 |
+
"Süt ürünleri\n",
|
1187 |
+
"Farsçadan Türkçeye geçen sözcükler\"\"\"\n",
|
1188 |
+
"\n",
|
1189 |
+
"keywords = ['peynir', 'peynirin', 'peynirler', 'olarak', 'ton', 'süt', 'avrupa', 'right', 'align', 'yapılan', 'altı', 'üretimi', 'protein', 'büyük', 'elde', 'amerika', 'almanya', 'sütünden', 'fransa', 'dünya', 'farklı', 'küflü', 'ilk', 'kalsiyum', 'çok', 'türkiye', 'peyniri', 'yağ', 'gelen', '20', 'sütü', 'tüketimi', 'tuzlu', 'milyon', 'liderdir', 'olan', 'diğer', 'com', 'doğu', 'daki', 'beyaz', 'devletleri', '2014', 'üzerinde', 'web', 'mayası', 'eski', 'manasına', 'olduğu', 'sağlıklı', 'ortaya', 'www', 'veya', 'tuzlama', 'sütün', 'üretiminin', 'suyu', 'suyunun', 'orta', 'tarafından', 'ankara', 'üretim', 'birleşik', 'lor', 'inek', 'iç', 'göre', 'edilmektedir', 'http', 'üniv', 'üzerine', 'ürünü', '11', '10', '90', '000', 'du', 'dillerinde', 'çeşitli', 'çeşitleri', 'caseus', 'cheese', 'dolayısıyla', 'asit', 'başına', 'asp', 'asya', 'ayrıca', 'üretilen', 'başladı', 'başka', 'besin', 'kaynağıdır', 'kelimeler', 'kalıp', 'yöresel', 'içeren', 'hint', 'ikinci', 'zamandan', 'hollanda', 'günümüz', 'food', 'fermente', 'gb', 'geliyordu', 'fabrika', 'edilen', 'olması', 'olmasına', 'yaygın', 'yapımı', 'olmadığı', 'mısır', 'mö', 'modern', 'maison', 'mandıra', 'nde', 'lk', 'listeria', 'language', 'lait', 'mehmet', 'kullanılmıştır', 'kişi', 'kültürü', 'küf', 'kültürler', 'kullanılan', 'hayvan', 'ilgili', 'içerir', 'ihracat', 'ihraç', 'roma', 'yaklaşık', 'yalnızca', 'peynirleri', 'peynirlerden', 'yapı', 'uraz', 'uyutmak', 'uygun', 'vardır', 'rağmen', 'stanbul', 'scripts', 'yazılı', 'ref', 'proteini', 'public', 'saf', 'te', 'stat', 'sütten', 'türk', 'udhıttı', 'udhıtmak', 'tütün', 'şeklinde', 'üretiyorlardı', 'üretirken', 'üretir', 'üretimlerinin', 'üretimine', 'üretiminden', 'üretiminde', '1860', '1851', '1815']\n",
|
1190 |
+
"# TF-IDF vektörizer oluştur\n",
|
1191 |
+
"tfidf_vectorizer = TfidfVectorizer()\n",
|
1192 |
+
"\n",
|
1193 |
+
"# Texti ve anahtar kelimeleri TF-IDF vektörlerine dönüştür\n",
|
1194 |
+
"text_tfidf = tfidf_vectorizer.fit_transform([text])\n",
|
1195 |
"keywords_tfidf = tfidf_vectorizer.transform(keywords)\n",
|
1196 |
"\n",
|
1197 |
+
"# Benzerlik hesapla\n",
|
1198 |
+
"similarities = []\n",
|
1199 |
+
"for i in range(keywords_tfidf.shape[0]):\n",
|
1200 |
+
" keyword_tfidf = keywords_tfidf[i, :]\n",
|
1201 |
+
" similarity = cosine_similarity(text_tfidf, keyword_tfidf)\n",
|
1202 |
+
" similarities.append((keywords[i], similarity[0][0]))\n",
|
1203 |
+
"\n",
|
1204 |
+
"# Sonuçları yazdır\n",
|
1205 |
+
"for keyword, similarity in similarities:\n",
|
1206 |
+
" #print(f\"Keyword: {keyword}, Similarity: {similarity}\")\n",
|
1207 |
+
"\n",
|
1208 |
+
"# En yüksek benzerliğe sahip olan ilk 5 anahtar kelimeyi filtrele\n",
|
1209 |
+
" top_5_keywords = sorted(similarities, key=lambda x: x[1], reverse=True)[:5]\n",
|
1210 |
+
"\n",
|
1211 |
+
"# Sonuçları yazdır\n",
|
1212 |
+
"for keyword, similarity in top_5_keywords:\n",
|
1213 |
+
" print(f\"Keyword: {keyword}, Similarity: {similarity}\")"
|
1214 |
+
]
|
1215 |
+
},
|
1216 |
+
{
|
1217 |
+
"cell_type": "code",
|
1218 |
+
"execution_count": 12,
|
1219 |
+
"metadata": {},
|
1220 |
+
"outputs": [
|
1221 |
+
{
|
1222 |
+
"name": "stdout",
|
1223 |
+
"output_type": "stream",
|
1224 |
+
"text": [
|
1225 |
+
"['rus', 'ahecaqo', 'türkçe', 'pşıqo', '1777', 'çerkes', '000', 'çerkesya', 'ölenler', 'ünlüydü', 'ölüm', 'yazmadıkları', 'ulaşıyordu', 'tarihlerini', 'çerkeslerin', 'çerkesler', 'çatışmalar', 'zaferlerle', 'öldü', 'soneki', 'soy', 'soyadları', 'soylular', 'sıra', 'savaşı', 'sim', 'saygı', 'ordusu', 'oluşan', 'olduğunu', 'müfrezesi', 'lakaptır', 'savaşına', 'qo', 'oğlu', 'kazandığı', 'kaynakça', 'kaynaklarından', 'kaynak', 'kaydedilmedi', 'katılımı', 'kalıcı', 'kafkas', 'ismidir', 'ismi', 'hastalıktan', 'hakkında', 'geçti', 'lakapları', 'kişiler', 'kişi', 'eş', 'geldiği', 'gelen', 'eğitim', 'dönem', 'erken', 'ekiyle', 'ek', 'devlet', 'büyütüldü', 'bölgesinde', 'bjeduğ', 'biyografi', 'duyulan', 'doğumlular', 'doğdu', 'beyoğlu', 'bilgiler', 'birliklerine', 'belirtir', 'askerî', 'becerisinin', 'atlıya', 'atlıdan', 'anlamlıdır', 'anlamına', 'askeri', 'adlardaki', '1838', 'adamıydı', '1837', '12']\n"
|
1226 |
+
]
|
1227 |
+
}
|
1228 |
+
],
|
1229 |
+
"source": [
|
1230 |
+
"\"\"\"tfidf_keywords_array= np.array([['rus', 'ahecaqo', 'türkçe', 'pşıqo', '1777', 'çerkes', '000',\n",
|
1231 |
+
" 'çerkesya', 'ölenler', 'ünlüydü', 'ölüm', 'yazmadıkları',\n",
|
1232 |
+
" 'ulaşıyordu', 'tarihlerini', 'çerkeslerin', 'çerkesler',\n",
|
1233 |
+
" 'çatışmalar', 'zaferlerle', 'öldü', 'soneki', 'soy', 'soyadları',\n",
|
1234 |
+
" 'soylular', 'sıra', 'savaşı', 'sim', 'saygı', 'ordusu', 'oluşan',\n",
|
1235 |
+
" 'olduğunu', 'müfrezesi', 'lakaptır', 'savaşına', 'qo', 'oğlu',\n",
|
1236 |
+
" 'kazandığı', 'kaynakça', 'kaynaklarından', 'kaynak',\n",
|
1237 |
+
" 'kaydedilmedi', 'katılımı', 'kalıcı', 'kafkas', 'ismidir',\n",
|
1238 |
+
" 'ismi', 'hastalıktan', 'hakkında', 'geçti', 'lakapları',\n",
|
1239 |
+
" 'kişiler', 'kişi', 'eş', 'geldiği', 'gelen', 'eğitim', 'dönem',\n",
|
1240 |
+
" 'erken', 'ekiyle', 'ek', 'devlet', 'büyütüldü', 'bölgesinde',\n",
|
1241 |
+
" 'bjeduğ', 'biyografi', 'duyulan', 'doğumlular', 'doğdu',\n",
|
1242 |
+
" 'beyoğlu', 'bilgiler', 'birliklerine', 'belirtir', 'askerî',\n",
|
1243 |
+
" 'becerisinin', 'atlıya', 'atlıdan', 'anlamlıdır', 'anlamına',\n",
|
1244 |
+
" 'askeri', 'adlardaki', '1838', 'adamıydı', '1837', '12']],\n",
|
1245 |
+
" dtype=object)\n",
|
1246 |
+
"# Anahtar kelimeleri düz bir listeye dönüştür\n",
|
1247 |
+
"tfidf_keywords = tfidf_keywords_array.flatten().tolist()\n",
|
1248 |
+
"print(tfidf_keywords)\"\"\""
|
1249 |
+
]
|
1250 |
+
},
|
1251 |
+
{
|
1252 |
+
"cell_type": "code",
|
1253 |
+
"execution_count": null,
|
1254 |
+
"metadata": {},
|
1255 |
+
"outputs": [],
|
1256 |
+
"source": [
|
1257 |
+
"# Transform the text and keywords into TF-IDF representations\n",
|
1258 |
+
"# Create a TfidfVectorizer instance\n",
|
1259 |
+
"tfidf_vectorizer = TfidfVectorizer()\n",
|
1260 |
+
"text_tfidf = tfidf_vectorizer.fit_transform(corpus) #burada text'i de vetörize ediyoruz.\n",
|
1261 |
+
"keywords_tfidf = tfidf_vectorizer.transform(tfidf_keywords_extract)\n",
|
1262 |
+
"\n",
|
1263 |
+
"\n",
|
1264 |
+
"\n",
|
1265 |
"# Calculate the cosine similarity between the text and each keyword\n",
|
1266 |
"similarities = []\n",
|
1267 |
"for i in range(keywords_tfidf.shape[0]): #keyword_tfidf matrisinin satırları üzerinde dönfü tanımlıyoruz \n",
|
|
|
1277 |
"\n",
|
1278 |
"# Print the top 10 keywords with their similarities\n",
|
1279 |
"print(\"Top 10 Keywords with Similarities:\")\n",
|
1280 |
+
"for tfidf_keywords_extract, similarity in keyword_similarities[:10]:\n",
|
1281 |
+
" print(f\"{tfidf_keywords_extract}: {similarity:.4f}\")"
|
1282 |
]
|
1283 |
},
|
1284 |
{
|