Fünf Schritte, um das Unvermeidliche oder ein Cross-Selling-Empfehlungssystem zu schaffen

Stufe 0: Beginn des Weges


In den Realitäten der modernen Welt stellt sich eine vernünftige Frage, wenn allgegenwärtige Digitalisierung und Anhäufung von Daten über alles und jeden durchgeführt wird, aber wie diese Daten verwendet werden sollen. Sicherlich haben viele bereits von Empfehlungssystemen in den Bereichen Unterhaltung und Verkauf gehört. Investmentgesellschaften halten sich nicht von aktuellen Trends im Bereich Data Science und insbesondere von Empfehlungssystemen fern. Schauen wir uns also an, welche Funktionen und welche Phasen eine große Investmentgesellschaft durchlaufen musste, um ein eigenes Empfehlungssystem zu entwickeln, um die Cross-Selling-Effektivität zu erhöhen, und was am Ende passiert ist.



Stufe 1: Ablehnung


Was ist der Unterschied zwischen dem Verkaufsprozess in einer Investmentgesellschaft und dem ähnlichen Prozess in anderen Unternehmen? Mal sehen, was gemeinsam ist.


  • / ( , ).
  • , ( ).

.


  • , .
  • , (, ) .
  • , , .
  • .

: , . , , , . - ( , ).


2:


-, , . , : , , , , -, , ( ). 100 , . , , .


7070 , ( ) . Pandas NumPy Python. 31, , , - . Python , . .


, , () :


  • ,
  • ,
  • ,
  • - .

3:


, ? – , .


, , . , , .


, . «» . :


  1. , .
  2. « », .. , , , .
  3. .

, « » , .. . , , , «» :


  • . = 1
  • . = 2

, . .


, , ?



«». , , . : , , , .


. 0 1, 0 – . , ...


4:


, Python « », :


dist_cosini = scipy.spatial.distance.cosine(user_one, user_two)

- , Python «», 30000 31- , . .


, , , «l1-» ( — ), «l2-» ( ).


manhattan = round(numpy.linalg.norm(user_one - user_two, ord = 1), 4)


euclidean = round(numpy.linalg.norm(user_one - user_two, ord = 2), 4)

. , . , , . , «l1-» - , «l2-» — . , , …


. , «» , . - .


?


.

, ?


  • «» «» .
  • GIL ( ), Python .

...



. :


  • ( — ).
  • .
  • - , .. , .
  • : 0 1, .

:



, ( B). , :


import numpy as np

CosD = round(1 - (np.sum((user_one * user_two)) / (np.sqrt(np.sum(user_one**2)) * np.sqrt(np.sum(user_two**2)))), 4)

, «l-», .



GIL (Global Interpreter Lock) . , «» GIL, «». , — . , ? Numba.


Python, Numba - . - Python , - . Numba - Python LLVM ( Python).


, :


import numpy as np
from numba import njit

@njit
def dist_cosini(user_one, all_user):
    user_point = []
    for q in range(len(all_user)): 
        user_two =  all_user[q]
        CosD = round(1 - (np.sum((user_one * user_two)) / np.sqrt(np.sum(user_one**2)) / np.sqrt(np.sum(user_two**2))), 4)
        user_point.append(CosD)
    return user_point

, Numba «» GIL . 60 .



5:


"" ( 13 ). .


, — . .


, «» . .


, , , .


. -. , CRM. « » .



:


  • ( ).
  • « » ( 13 ).

Zu diesem Zweck wurde bereits begonnen, das System in eine der Arten von hybriden Empfehlungssystemen umzuwandeln. Es wird auch daran gearbeitet, die Arbeit des Empfehlungssystems mit komplexen Produkten zu vertiefen.


All Articles