Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
AUTOMATIC RANKING OF ENTITIES BASED ON INTERACTIONS THEREBETWEEN
Document Type and Number:
WIPO Patent Application WO/2013/030830
Kind Code:
A1
Abstract:
Method, apparatus and product for analyzing electronically stored communications. The method comprising obtaining electronically stored communications between entities, the entities comprising employees of an organization. The method further comprising analyzing the electronically stored communications to determine a score associated with substantially each entity. The analyzing comprises: processing content of the communications using Natural Language Processing (NLP); and generating a social network of the entities based upon the communications and analyzing the social network.

Inventors:
LEVY DANIEL (IL)
FOLKMAN ROY (IL)
SEGEV YAKIR (IL)
Application Number:
PCT/IL2012/050316
Publication Date:
March 07, 2013
Filing Date:
August 19, 2012
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
LEVY DANIEL (IL)
FOLKMAN ROY (IL)
SEGEV YAKIR (IL)
International Classes:
G06Q10/06; G06F17/30
Foreign References:
US20090313346A12009-12-17
US20100119053A12010-05-13
US20090228318A12009-09-10
US20080120411A12008-05-22
US7366759B22008-04-29
US7685016B22010-03-23
Attorney, Agent or Firm:
GLAZBERG, Ziv (Applebaum & Co.55 Begin Roa, 5th floor Tel Aviv, IL)
Download PDF:
Claims:
CLAIMS

What is claimed is:

1. A computer-implemented method performed, at least partially, by a computerized device, the method comprising:

obtaining electronically stored communications between entities, the entities comprising employees of an organization; and

analyzing the electronically stored communications to determine a score associated with substantially each entity,

wherein said analyzing comprises:

processing content of the communications using Natural Language Processing (NLP); and

generating a social network of the entities based upon the communications and analyzing the social network.

2. The computer-implemented method of Claim 1, wherein the score is determined with substantially each employee of the organization; and wherein the score comprises a degree of engagement of the employee.

3. The computer-implemented method of Claim 1, wherein said score comprises a degree of importance.

4. The computer-implemented method of Claim 1, wherein said obtaining comprises retrieving the communications from an item selected from the group consisting of: a mailing server, a social network platform, a telecommunications database, and a calendar database.

5. The computer-implemented method of Claim 1, wherein said processing the communications using NLP comprises:

determining a type of an entity participating in the communication; and determining a sentiment of the communication.

6. The computer-implemented method of Claim 1, wherein said processing the communications using NLP comprises: determining a type of interaction for each communication, wherein the type of interaction is either private interaction, business interaction or amicable interaction; and wherein said generating the social network is based on communications of one or more predetermined types.

7. The computer-implemented method of Claim 6, wherein said determining the type of interaction determines whether the business interaction is either a work interaction or a client-related interaction.

8. The computer-implemented method of Claim 1, further comprising: obtaining keywords associated with business issues of the organization; wherein the NLP is performed so as to identify interactions associated with the business issues based on usage of the keywords; and wherein said generating the social network is based on communications associated with the business issues.

9. The computer-implemented method of Claim 8, wherein the business issues are limited to critical business issues.

10. The computer-implemented method of Claim 1, wherein said generating the social network comprises: unifying two or more entities into a single entity in the social network, based on the characteristics of the two or more entities.

11. The computer-implemented method of Claim 1, wherein said analyzing further comprises analyzing metadata of the communications.

12. The computer-implemented method of Claim 1, wherein said obtaining further comprises filtering the communications based on user-provided keywords and based on a time of communication.

13. The computer-implemented method of Claim 1, further comprising performing a training phase, wherein during said training phase:

a training dataset is provided;

said analyzing is performed with respect to the training dataset; and analysis determinations are validated or modified, whereby said analyzing is trained to correctly analyze the communications.

14. The computer-implemented method of Claim 1,

wherein said obtaining and said analyzing are performed periodically with respect to different sets of communications; and the method further comprises: determining a trend over time based on at least the determined score and one past score.

15. The computer-implemented method of Claim 1, wherein based on the scores of the entities a user is enabled to take one or more actions to improve the organization's performance.

16. The computer-implemented method of Claim 1, further comprising:

determining one or more suggested actions with respect to one or more entities, based on the determined scores of the entities; and

providing the one or more suggested actions to a user.

17. An apparatus having a storage unit, the apparatus comprising:

a processing unit adapted to:

obtain electronically stored communications between entities, the entities comprising employees of an organization; and

analyze the electronically stored communications to determine a score associated with substantially each entity,

wherein the analysis comprises:

utilizing a Natural Language Processing (NLP) module operative to analyze content of the electronically stored communications; and

utilizing a Social Network Analysis (SNA) module operative to generate a social network of the entities based upon the communications and analyze the social network.

18. The apparatus of Claim 14, further comprising a metadata extractor operative to extract metadata of the electronically stored communications, and wherein the analysis further comprises utilizing the extracted metadata to determine the scores.

1 . The apparatus of Claim 14, wherein the apparatus is operatively coupled to a database storing the electronically stored communications, and wherein the database is associated with a mailing server, a social network platform, a telecommunication database, or a calendar database.

20. The apparatus of Claim 14, wherein said NLP module is at least operative to:

determine a type of an entity participating in the communication; determining a sentiment of the communication; and

determining a type of interaction for each communication, wherein the type is either private interaction, business interaction or amicable interaction.

21. The apparatus of Claim 14, wherein said NLP module is adapted to receive keywords associated with business issues of the organization and said NLP module is further adapted to identify interactions associated with the business issues based on usage of the keywords.

22. The apparatus of Claim 14, wherein said SNA module is operative to represent a plurality of entities associated with a business unit using a single entity, thereby enabling determination of a score with respect to the business unit.

23. The apparatus of Claim 17, wherein said processing unit is adapted to obtain and analyze different sets of communications over time; and wherein said processing unit is adapted to determine a trend over time based on at least the determined score and one past score.

24. A computer program product comprising:

a non-transitory computer readable medium;

a first program instruction for obtaining electronically stored communications between entities, the entities comprising employees of an organization;

a second program instruction for analyzing the electronically stored communications to determine a score associated with substantially each entity, wherein the analyzing comprises:

processing content of the communications using Natural Language Processing (NLP); and

generating a social network of the entities based upon the communications and analyzing the social network; wherein said first and second program instructions are stored on said non- transitory computer readable medium.

Description:
AUTOMATIC RANKING OF ENTITIES BASED ON INTERACTIONS

THEREBETWEEN

CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application claims the benefit of U.S. Provisional Application No. 61/529,499 filed August 31, 2011, which is hereby incorporated by reference.

TECHNICAL FIELD

[0002] The present disclosure relates to machine learning in general, and to automatic ranking of entities based on interactions by the entities, in particular.

BACKGROUND

[0003] Assessing value derived from employees, vendors, clients and other entities is generally an important task for an organization. For instance, a decision whether or not to give an employee a salary raise or other benefits, may be made based on the value derived from the employee. Moreover, some employees are assets to a business, such as those possessing unique information, serving as a knowledge center in the firm, forming a bridge of information flow to other entities, or the like.

[0004] One parameter in which employees are evaluated is engagement. An engaged employee is one who is involved in, and enthusiastic about, his work. An engaged employee is more likely to act in a way that furthers his organization's interests. Some may view the engagement as a degree of an employee's positive or negative emotional attachment to his job, colleagues and organization. The more positive the emotional attachment, the greater the likelihood that the employee will generate value for the business.

[0005] As engaged employees are a valuable asset to an organization, some organizations may be actively try to induce engagement of the employees.

[0006] Engagement is measured using questionnaires, such as Gallup® Q12™. By asking employees questions about their co-workers, and by analyzing an employee's answers, as well as his co-workers answers about him, the engagement and motivation is measured as a degree in a scale.

[0007] However, this requires the employees to answer the questionnaires which may be a time consuming task. Moreover, the questionnaires usually comprise of open questions and multi-choice questions. Therefore, reviewing the answers and analyzing them require a great deal of manual effort which is performed before the engagement measurement is determined. In addition, this manual effort is many times a costly service.

[0008] Furthermore, measurement which is based on questionnaires may be biased, as it is based on subjective impressions.

[0009] Furthermore, the measurement is only valid for the time it is being performed and as time progresses the engagement level of each employee may change. This is specifically the case if active measures were taken to increase engagement. The outcome of such actions is sometimes hard to evaluate, and may require to undergo another analysis. As this may require additional resources, such as employees' time and the additional costs, organizations tend to perform such evaluations, at best, once every long period of time. For example, an origination may analyze the employee's engagement degree once a year.

[0010] Accordingly, departments, teams and other business units within the organization may be evaluated. Other entities associated with the organization, such as clients and vendors, may be evaluated to determine their value to the business.

BRIEF SUMMARY

[001 lj One exemplary embodiment of the disclosed subject matter is a method a computer-implemented method performed, at least partially, by a computerized device, the method comprising: obtaining electronically stored communications between entities, the entities comprising employees of an organization; and analyzing the electronically stored communications to determine a score associated with substantially each entity, wherein the analyzing comprises: processing content of the communications using Natural Language Processing (NLP); and generating a social network of the entities based upon the communications and analyzing the social network.

Another exemplary embodiment of the disclosed subject matter is an apparatus having a storage unit, the apparatus comprising: a processing unit adapted to: obtain electronically stored communications between entities, the entities comprising employees of an organization; and analyze the electronically stored communications to determine a score associated with substantially each entity, wherein the analysis comprises: utilizing a Natural Language Processing (NLP) module operative to analyze content of the electronically stored communications; and utilizing a Social Network Analysis (SNA) module operative to generate a social network of the entities based upon the communications and analyze the social network.

[0012] Yet another exemplary embodiment of the disclosed subject matter is a computer program product comprising: a non-transitory computer readable medium; a first program instruction for obtaining electronically stored communications between entities, the entities comprising employees of an organization; a second program instruction for analyzing the electronically stored communications to determine a score associated with substantially each entity, wherein the analyzing comprises: processing content of the communications using Natural Language Processing (NLP); and generating a social network of the entities based upon the communications and analyzing the social network; wherein the first and second program instructions are stored on the non-transitory computer readable medium. BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

[0013] The present disclosed subject matter will be understood and appreciated more fully from the following detailed description taken in conjunction with the drawings in which corresponding or like numerals or characters indicate corresponding or like components. Unless indicated otherwise, the drawings provide exemplary embodiments or aspects of the disclosure and do not limit the scope of the disclosure. In the drawings:

[0014] Fig. 1 shows a computerized environment in accordance with some exemplary embodiments of the disclosed subject matter;

[0015] Fig. 2 shows a flowchart diagram of steps in a method of analyzing electronically stored communications, in accordance with some exemplary embodiments of the disclosed subject matter;

[0016] Fig. 3 shows a block diagram of components of an apparatus for analyzing electronically stored communications, in accordance with some exemplary embodiments of the disclosed subject matter;

[0017] Fig. 4 shows a bar chart showing for each business unit a degree of connectivity to other business units, in accordance with some exemplary embodiments of the disclosed subject matter;

[0018] Fig. 5 shows a line chart representing sum of degree out and sum of reach out for each entity, in accordance with some exemplary embodiments of the disclosed subject matter;

[0019] Fig. 6 shows a line chart representing average response time for each entity, in accordance with some exemplary embodiments of the disclosed subject matter;

[0020] Fig. 7 shows a line chart representing engagement degrees of entities over time, in accordance with some exemplary embodiments of the disclosed subject matter;

[0021] Fig. 8 shows a chart indicating for each entity its engagement and importance degrees, in accordance with some exemplary embodiments of the disclosed subject matter;

[0022J Fig. 9 shows a bar chart indicating activity level and dominance of entities, in accordance with some exemplary embodiments of the disclosed subject matter; [0023] Fig. 10 shows a bar chart indicating reach in and reach out values for each entity, in accordance with some exemplary embodiments of the disclosed subject matter;

[0024] Fig. 11 shows a bar chart indicating activity level by business unit, in accordance with some exemplary embodiments of the disclosed subject matter; and [0025] Fig. 12 shows a social network of entities, in accordance with some exemplary embodiments of the disclosed subject matter.

DETAILED DESCRIPTION

[0026] The disclosed subject matter is described below with reference to flowchart illustrations and/or block, diagrams of methods, apparatus (systems) and computer program products according to embodiments of the subject matter. It will be understood that blocks of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to one or more processors of a general purpose computer, special purpose computer, a tested processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.

[0027] These computer program instructions may also be stored in a non-transient computer-readable medium that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the non-transient computer-readable medium produce an article of manufacture including instruction means which implement the function/act specified in the flowchart and/or block diagram block or blocks.

[0028] The computer program instructions may also be loaded onto a device. A computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.

[0029] The present disclosure focuses on employees, however it will be understood that the disclosed subject matter is not limited to this type of entity and may be applied on other entities as well.

[0030] One technical problem dealt with by the disclosed subject matter is to automatically rank entities associated with an organization. Automatic ranking may be performed based on information associated with e-mails or other interactions which are stored electronically. The ranking may be based on performance measurements measured with respect to each entity.

[0031] As disclosed above, ranking and measuring different performances metrics of the entities may be useful in business decisions such as determining salaries, bonuses, which employees to fire or the like. As another example, in case an employee is identified as holding substantially unique knowledge or being an only bridge of information to other employees or business units, the organization may act to ratify this situation, such as by training a replacement or creating a different channel of communication. Other measures may be taken based on these discoveries.

[0032] In some exemplary embodiments, the disclosed subject matter may be utilized for providing management consulting to the organization, such as assisting in a reorganization of the organization, assisting in a change management process or similar organizational processes.

[0033] One technical solution comprises automatically analyzing electronically stored communications between entities associated with the organization. Based on the analysis, ranking of the entities may be determined.

[0034] In some exemplary embodiments, the analysis may determine degree of engagement of the entity. Additionally or alternatively, importance of the entity to the organization may be determined and utilized in ranking. Other characteristics may be utilized in addition or instead of the exemplary characteristics.

[0035] The electronically stored communications may be, for example, email data, such as retained by a mailing server. Additionally or alternatively, telecommunication records may be utilized to determine interaction between entities, such as telephone calls, which may be recorded and stored electronically. Additionally or alternatively, information may be obtained from a Consumer Relationship Management (CRM) system, an Enterprise Resource Planning (ERP) system or module utilized within the organization, Instant Messaging services, chat platforms, or the like. Additionally or alternatively, information may be obtained from calendar related system indicative of behavior of the entities. Additionally or alternatively, information may be obtained from a social networking service, such as Facebook®, Linkedln®, or the like. It will be noted that in the presented disclosure, "electronically stored communications" are any form of retainable communications, including but not limited to, stored in a magnetic medium, optical medium or other computer readable medium. Electronically stored communications are provided in any form that a computerized apparatus may process.

[0036] Another technical solution comprises extracting data based on the interactions and determining based on the data the ranking. The extracted data may be, for example, metadata of the interaction, data derived using Natural Language Processing (NLP), data obtained based on a Social Network Analysis (SNA), or the like.

[00371 In some exemplary embodiments, NLP may be utilized to extract information from electronically stored interactions. NLP may extract information based on the words used in the interactions, context of their usage, and the like. NLP may be utilized to determine sentiment and similar information that do not appear in the text, rather can be understood by a person reading the text. In some exemplary embodiments, the NLP may categorize and classify data and based thereon provide output in accordance with the disclosed subject matter.

[0038] NLP may be used to extract different information. For example, based on the content of the interaction, a type of each entity may be determined, such as for example an employee, a customer, a vendor or the like. As another example, each interaction may be determined in accordance with its type. In some exemplary embodiments, an interaction may be a private interaction (e.g., to his wife, college friend, or broker), a business interaction (i.e., between two entities associated with the organization regarding business issues), an amicable interaction (e.g., between two entities regarding a nonbusiness issue). Business interaction may be further divided into groups, such as work interaction and client-related interaction.

[0039] The NLP may utilize sentiment analysis to determine whether the interaction is positive, negative or in a range therebetween using a scale.

[0040] The NLP may identify business issues specifically associated with the organization. The identification may be based on keywords associated with business issues of the organization. Additionally or alternatively, the identification may be determined using machine learning analysis based on interactions that were considered to be associated with business issues. In some exemplary embodiments, business issues may be limited to issues which are deemed critical business issues. [0041] In some exemplary embodiments, SNA may be utilized to extract information. A social network may be generated based on the interactions between the entities. The social network may comprise edges between entities that interact. In some exemplary embodiments, the edges may be weighted in accordance with the frequency of interaction. In some exemplary embodiments, only interactions in a frequency above a predetermined threshold are added to the network. The social network may be analyzed to determine the ranking of entities. For example, parameters such as frequency of interactions, whether the interactions are symmetric, whether the entities are within the organization (e.g., employees) or one is outside of it (e.g., a vendor), or the like. Similarly, instead of analyzing the network with respect to the organization, the analysis may be based on a business unit thereof, or any other similar aggregative entity that aggregates a set of entities.

[0042] In some exemplary embodiments, metadata of the interaction may be utilized. The author and addressee may be stored in a metadata field. Additionally or alternatively, time of interaction may be stored and utilized to determine how quickly a response was provided, or other responsiveness measurements.

[0043] Yet another solution is to unify entities in the network, such as a secretary and her boss, as the secretary may often send communications on behalf of the boss. As another example, several distinct clients may be unified into a set of clients having the same characteristic, such as students, private clients, small business clients, or the like. In some exemplary embodiments, entities may be unified into an aggregative entity of other types as well. As yet another example, business departments or units may be unified based on preferences of the organization, and may be user-configured to meet each organization's different needs.

[0044J Yet another solution is to filter interactions. Interactions outside of a predetermined time window may be filtered. Additionally or alternatively, interactions may be filtered based on keywords.

[0045] One technical effect of utilizing the disclosed subject matter is determining ranking of entities and providing business-useful data to the organization. As the determining is automatic, at least in part, financial and/or time costs may be reduced. Furthermore, the ranking may be recomputed repeatedly over time to provide information as to change in ranking of a specific entity or a group of entities. Furthermore, automatic alerts may be provided, such as based on the data, change in data over time (e.g., in absolute terms or relative terms), direction, and tendency of change, or the like. As the determination is performed based on past interactions, as opposed to questionnaires, actual information is obtained and not based on appreciation thereof by other entities. Employees filling questionnaires may be motivated to lie in order to assist their friends and/or to advance themselves, as opposed to reviewing actual interactions committed by the entities. Another effect is that the information may be based on a large time window, such as a year, and not focused on the period in which the questionnaire is filled. Moreover, the disclosed subject matter is substantially resistant to biases effecting humans, such as first impressions, ethnic group bias, favoring tall man, blonde women or other appearance characteristics, or the like.

[0046] Yet another effect is enabling computation of trends based on the change in data over time. Based on analysis that is performed periodically, differences between current and previous metric values may be identified and trends may be determined. Based on a current trend and past values, extrapolation of future values may be determined and utilized as a forecast.

[0047] Yet another effect is enabling a user to deduce useful information regarding the organization. Based on the deduced insight, appropriate actions may be taken, such as establishing new lines of communications between entities, identifying entities which generate action within the organization, and distinguishing them from the entities that merely follow orders, identifying isolated business units and determining whether or not the isolation should continue, identifying a less than optimal time utilization by an employee, changing organization's procedures and methods such as who reports to who or who should be invited to what sessions, establishing efficient teams. As another example, reduction in engagement may result in extensive sick/leave days of employees, thus may cause problems with the ordinary course of business. Identifying such trends may be useful to act to reduce unjustified sick/leave days. In some exemplary embodiments, the deduced information may be used as a basis for conducting a periodic feedback session with employees of the organization. [0048] Referring now to Fig. 1, showing a computerized environment in accordance with some exemplary embodiments of the disclosed subject matter. A computerized environment 100 may comprise Electronically Stored Communications (ESCs). The ESCs may be retained by a storage device, such as a storage server, a hard disk, a Flash device or the like. The ESCs may be comprised by a social network database 120, such as associated with a social network platform, such as Facebook® or Linkedln®. It will be noted that instant messaging services, such as ICQ®, as well as CRM systems such as SalesForce®, ERP services, such as provided by SAP®, may also be referred to in the present application as social network platforms, as they comprise ESCs of entities associated with the organization. Additionally or alternatively, the ESCs may be comprised by a mailing server 122, such as associated with a web-based mailing service, such as Google® Gmail® or Microsoft® Hotmail®., associated with a server-based mailing system, such as Microsoft® Exchange Server® or IBM® Lotus®, or the like. Additionally or alternatively, the ESCs may be stored in a telecommunication database 124 such as associated with video conference system, mobile telecommunication system, landline telecommunication system, Voice over IP (VoIP) system or the like. Additionally or alternatively, a calendar database 126 associated with a scheduling system, such as Google® Calendar® or Microsoft® Outlook®, may comprise information regarding collaboration between entities, such as meetings, participants in meeting, subject and outline of the meeting, location of the meeting, or the like.

[0049] In some exemplary embodiments, information retained in the calendar database 126 may be useful to identify responsiveness of entities, such as based on how quickly they approve or decline a meeting suggestion. Additionally or alternatively, the calendar database 126 may comprise data showing how busy an entity is during work time, how many work-related meetings he schedules, how many non-work related meetings he has, which portion of the time he is absent from work for personal reasons, or the like. A content of the interaction may be a description of the meeting, stored video/audio conference data or interpreted text thereof which may be determined automatically. In some exemplary embodiments, the calendar database 126 may comprise interactions between entities prior to the meeting such as suggesting new time for the meeting, providing comment when accepting or declining, or the like. [0050] In some exemplary embodiments, ESC retains information of the content of the communications, and not merely its existence. The ESC may identify entities participating in the communication, time of communication, location thereof or of the entities, and additional metadata in addition to the content.

[005 lj A communication analysis tool 110 may be configured to analyze the ESCs. The tool 110 may be configured to obtain the ESCs from one or more of the storages 120, 122, 124, 126. The tool 110 may be configured to analyze the ESCs using NLP methods, to generate a social network based on the interactions and analyze it to determine scores for each entity. The scores may be indicative of the activity of the entity. The score may be for example, a degree of engagement, a degree of importance, a degree of service-orientation, a degree of sentiment, a combination thereof, or the like.

[0052] In some exemplary embodiments, the tool 1 10 may first analyze content of the ESCs using NLP, and thereafter, and based on the NLP analysis, determine the social network of entities. The social network may comprise only specific types of communications, such as excluding private interactions, may only connect entities communication with each other above a predetermined threshold, such as above a specific number of interactions. Some interactions may be considered more important, such as based on their type. For example, business interactions may be considered twice more important than amicable interactions for the purpose of reaching the threshold.

[0053] In some exemplary embodiments, each communication may be of a different type, determinable using NLP, based on the content of the communication. A private interaction may be an interaction with an entity not associated with the organization. For example, an employee sending an e-mail to her spouse, may be categorized as a private interaction. A non-private interaction may be either a business interaction or an amicable interaction. A business interaction may be either a work interaction associated with a task to be performed in the course of business, or a client-related interaction associated with communicating with a client. In some exemplary embodiments, client-related interactions are considered more important than other work interactions. An amicable interaction may be a non-private interaction (i.e., between two entities associated with the organization) that is not considered a business interaction. [0054] In some exemplary embodiments, the NLP determines a type of each entity, such as based on the name of the entity, email address, domain name utilized in the email address, content of the ESCs, or the like. In some exemplary embodiments, the NLP may determine that some communications, though origination from a first entity, are actually originating from a second entity. Such would be the case for a secretary sending emails on behalf of his boss. Additionally or alternatively, an email sent by mistake to a first entity, who forwards the email to the correct recipient.

[0055] A user 140 may utilize a Man-Machine Interface (MMI) 145, such as a computer terminal, a display, an input device, a keyboard, or the like to interact with the tool 110. The user 140 may review the analysis provided by the tool 110, review social networks generated by the tool 110, view scores of different entities or the like. The user 140 may deduce insights with respect to the organization based on the data provided by the tool 110. In some exemplary embodiments, the user 140 may provide information useful for the tool 110, such as business related keywords, identifying specific entities and/or class of entities, identifying business units, or the like. In some exemplary embodiments, the user 140 may provide the tool 1 10 with a command to focus on a specific business unit, a specific entity, or the like.

[0056] In some exemplary embodiments, analysis performed by the tool 110 may be based on machine learning techniques. The tool 110 may be provided with training dataset, including analysis results thereof, to train the machine learning algorithms. In some exemplary embodiments, initially, manual analysis may be performed to enable automatic analysis. In some exemplary embodiments, the user 140 may review the results, and correct mistakes or wrong conclusions (e.g., an amicable interaction determined to be a business interaction; an employee determined to be a customer, or the like), and thereby enabling the tool 110 to utilize the correction to improve its analysis.

[0057] Referring now to Fig. 2 showing a flowchart diagram of steps in a method of analyzing electronically stored communications, in accordance with some exemplary embodiments of the disclosed subject matter.

[0058] In step 200, ESCs may be obtained, for example, from databases such as 120, 122, 124, 126 of Fig. 1. [0059] In step 210, some ESCs may be filtered out and disregarded. Filtering may be based on keywords, such as provided by the user 140, based on a time window, such as the past year, based on a content of ESC, such as content indicative of private context, or the like.

L0060J Based on the remaining ESCs, analysis may be performed. The analysis may include step 220 and/or step 230 and/or step 240.

[00611 In step 220, content of the ESCs may be processed using NLP. In some exemplary embodiments, an NLP engine, such as Temporal Pattern Engine™ (TPE), may be configured to perform text mining and construct taxonomy of terms relating to the organization. The NLP engine may be capable, using the taxonomy, to link a word and/or a sentence to a topic. The NLP engine may take into account the context in which words are being used. One exemplary NLP engine is described in Netzer, Oded, Feldman, Ronen, Goldenberg, Jacob and Fresko, Moshe, Mine Your Own Business: Market-Structure Surveillance Through Text Mining (April 20, 201 1), Available at SSRN (ssrn.com/abstract=1816494), which is hereby incorporated by reference.

[0062] In some exemplary embodiments, the NLP engine may require a training phase. Context categorizes specifically tailored to the organization may be manually defined and provided to the NLP engine. The NLP engine may review text (either from ESCs or from other source) and processes the text. The processing may include tokenization and zoning. Automatic rules to analyzing words may be generated by the NLP engine and may be useful for matching a category for a word, while taking into account its context. In some exemplary embodiments, during the training phase, a human moderator may review the results provided by the NLP engine, and based on his input to the NLP engine, the decoding rules may be modified. In some exemplary embodiments, several iterations of automatic analysis and manual review may be performed until the NLP engine reaches a desired accuracy, such as being correct in above 95% of the times.

[0063] The NLP engine may be adapted to handle typos, spelling mistakes, grammatical errors, slang, and the like. The NLP engine may generate an ontology dictionary of all words and contexts therebetween and their connection to categories. In some exemplary embodiments, the NLP engine may be adapted to perform disambiguation in case same word may be matched to different contexts. For example, in one organization, the word "carburetor" may be associated with acquisitions (part being acquired) and with malfunctions (location of the malfunction).

[0064] In some exemplary embodiments, the NIP algorithm may be trained using a training dataset and expected results. The expected results may be determined manually, using other automatic or semi-automatic manners, such as using textual identification of keywords and manually verifying or correcting the results, or the like.

[0065] In step 222, a type of entity may be determined based on the content of the ESCs.

[0066] In step 224, a sentiment of the communication may be determined. The sentiment may be positive, negative, neutral or the like. In some exemplary embodiments, the sentiment may be determined as a sentiment score, such as between -1 and 1. The sentiment may be utilized to determine the nature of relation between entities. For example, entities that have communications with positive sentiment may be considered with a higher degree of engagement. In some exemplary embodiments, sentiment towards entities of specific type, such as direct subordinates of a manager, clients of similar status or class, may be useful for the disclosed subject matter. For example, a manager being sassier with his subordinates than his peers are with their subordinates, may be considered as functioning poorly. As another example, sentiment when communicating with clients that is less than the average sentiment of an employee's peers when communicating with clients may indicate of a less than optimal performance of the employee.

[0067] It will be noted that as in any other metric, a difference of measurement between similar groups (e.g., executives of same organizational level, entities within the same business unit) or of the same entity over time, may be used by the disclosed subject matter in determining ranking and organizational measurements such as engagement.

[0068] In step 226, a type of interaction may be determined based on the content of the ESC.

[0069] In step 228, keywords associated with business issues may be obtained. The keywords may be obtained from the user 140. For example, the user may identify that the keyword "innovation" is a keyword useful with respect to the IP business of the organization. Additionally or alternatively, the keyword "employee" may be associated with Human Resources within the organization. Additionally or alternatively, the word "diamond" may be associated with business of sales in a diamond company. Additionally the word "customer satisfaction" may be associated with key personal dealing with customers.

[0070J In some exemplary embodiments, the business issue may be limited to critical business issues, so as to enable identification of business issues which are at the core of the organization. "Critical business issues" generally refer to business issues in the organization that are part of the core business of the organization. For example, in a wholesale company, selling is a critical business issues, while employees' uniform is not. As another example, in an organization focusing on research, communication between the research department and product managers relying innovative ideas is a critical business issue, while communications dealing with pricing is not.

[0071] In step 229, based on the obtained keywords, interactions associated with the business issues may be determined out of the ESCs. It will be noted, that as business issues are different for different organizations, the NLP performed in step 220 is specialized for each organization at least by focusing on different business issues. The NLP is therefore tailor-made to the organization, its business, and needs.

[0072] In some exemplary embodiments, based on identification of the interactions in step 229 additional relevant keywords may be determined, such as for example keywords that are not apparent to a human user. For example, the keywords "VAT" may be useful in identifying interactions associated with sales. It may be the case that during a sale specific keywords are often used and are useful in distinguishing between sales- related interactions and other interactions. For example, in a specific organization, the word "Kindly" may be often used in such interactions. In another organization the word "Kindly" may not be useful for this distinction, but the word "Please" may be useful for this purpose. In response to determining such words, analysis that is performed later on in step 229 may use the determined keywords as well. For example, when the method of Fig. 2 is performed again, based on, at least partially, new ESCs.

[0073] In step 230, a social network is generated based on the interactions. The social network is a graph comprising the entities and connections therebetween in accordance with their interactions. The connections between entities may be weighted in accordance with the frequency of interaction. For example, the weight may be a sliding scale from 1 to 5, where 1 is indicative of a daily interaction and 5 is indicative of an interaction once in a quarter. In some exemplary embodiments, the social network may comprise only entities having at least a threshold number of interactions, such as for example, a temp employee that only interacted 20 times during the week that he had worked for the organization may be filtered out. The threshold number may be an absolute number (e.g., above 20 interactions), a relative number based on the total number of interactions (e.g. above 0.05% of the interactions recorded in the ESCs), or the like. The threshold number may be provided by the user 140 or automatically derived based on configurations, preferences, or the like. In some exemplary embodiments, only symmetric relations may be represented in the social network. For example, if an employee sends soliciting emails to potential customers, those customers that do not respond would not be indicated as socially connected to the employee. It will be understood that in some exemplary embodiments symmetry may be required in cases where both entities are from within the organization as well.

[0074] In some exemplary embodiments, symmetry requirement may not require that both connections be of similar intensity, such as the connectivity between A and B may be weighted as 1 , whereas the opposite connection between B and A may be weight as 2. In such a case, A and B may be still considered as fulfilling the symmetry requirement, as A is connected to B and B is connected to A.

[0075] In some exemplary embodiments, in a graphical display of the social network only symmetric connections are displayed, while when analyzing the social network non-symmetric connections may also be evaluated, such as to determine degree in/out measurement and other network measurements.

[0076] In some exemplary embodiments, generation in step 230 may exploit the outcome of the processing in step 220. For example, entities may be identified by their type, as determined in step 222. As another example, social connectivity may be affected by sentiments of the communications and type of interaction, as determined in steps 224 and 226. The intensity of the interaction may be determined using such measurements, such as by weighting types of interactions, sentiment and frequency to a value used as a weight.

[0077] In step 232, different entities in the social network may be unified into a single entity. For example, a secretary and her boss may be unified, as the secretary may often send communications on behalf of the boss. As another example, several distinct clients may be unified into a set of clients having the same characteristic, such as students, private clients, small business clients, or the like. In some exemplary embodiments, unification may be full such that every interaction of the secretary is considered as the interaction of the boss. Additionally or alternatively, unification may be partial, such as only those interactions which were on behalf of the boss be attributed to the boss.

[0078] In step 234, network measurements may be determined for each entity. The measurements may be in accordance with metrics useful in analyzing the social network. The network measurements may be, for example, betweenness, closeness, power, degree in, degree out, reach in, reach out, internal activity, external activity, peers activity, superiors activity, egomap, or the like.

[0079] Betweenness may be a measurement of the extent to which a node lies between other nodes in the network. This measure takes into account the connectivity of the node's neighbors, giving a higher value for nodes which bridge clusters. The measure reflects the number of people who a person is connecting indirectly through their direct links.

[0080] Closeness may be a measurement of access - how quickly a node can access all other nodes via a minimum of hops. The closeness may be measured by an average distance from a given entity to all other entities. In some exemplary embodiments, an entities closeness measurement is a sum of a number of edges on each shortest path between the entity and each other entity divided by a number of other entities. Closeness may be indicative of how long it will take information to spread from a given entity in the social network or organization.

[0081] In some exemplary embodiments, power may be a measure of informal power. In some exemplary embodiments, the power measurement may combine betweeness and closeness to find nodes who have quick access yet stand in the way of other nodes' access. [0082] Degree in may be the count of the number of ties other entities in the network have to the entity. Accordingly, degree out may be the count of the number of ties to other entities in the network.

[0083] Reach in may be a number of entities that may reach the entity within a predetermined number of traversals over the social network, such as for example, 2 links. Accordingly, reach out may be a number of entities reachable by the entity within the predetermined number of connections.

[0084] Activity may be a weighted average of the weights of the edges to or from the entity. Activity in may be associated with edges to the entity, while activity out may be associated with edges from the entity. In some exemplary embodiments, activity may be measured with respect to a portion of the network. For example, internal activity may be measured with respect to entities within the organization. As another example, external activity may be measured with respect to entities external to the organization. As yet another example, in an organization having hierarchy of employees, activity between peers may be measured (peers activity (in and or out)), as well as activity with respect only to the entity's superiors in the hierarchy (superiors activity (in and/or out)).

[0085] Egomap may be a network of entities that are reachable within a predetermined number of connections from the measured entity, such as within two (2) connections. There may be value to reviewing all direct connections to the entity (i.e., within one connection) and comparing the added numbers of connections in the second degree. If an entity is connected with highly connected entities, the delta between the first degree and the second degree may be relatively large. In some exemplary embodiments, we may consider the egomap as the knowledge horizon of the entity from which he may extract information.

[0086] In step 240, metadata may be obtained from the ESCs. The metadata may include data indicative of the communication, but not its content. For example, the metadata may comprise email addresses of entities, time of communication, duration of communication, title of communication, or the like.

[0087] In some exemplary embodiments, the metadata may be useful for analyzing the ESC. For example, response time to communications may be measured by computing the difference between the time in which a first communication was received and a second communication, associated to the first communication was sent. In some exemplary embodiments, forwarding an email may be considered as responding. Additionally or alternatively, replying to an email may be considered as responding. In some exemplary embodiments, the content of the second communication may be examined, such as in step 220, to determine whether the second communication is responsive to the first communication. For example, forwarding an email to a colleague to ridicule the sender may be considered as non responsive. As another illustrative example, forwarding an email to assist in resolving an issue raised in the email may be considered as responsive.

[0088] In some exemplary embodiments, based on metadata any of the following metrics may be measured: average response time to communications received by the entity or average response time to communications sent by the entity. In some exemplary embodiments, thread strength may be measured. The thread strength may measure how many communication initiated by the employee are circling within the organization (e.g., an email sent a month ago, is so important, it is still being forwarded frequently a month later). In some exemplary embodiments, the metadata based metrics may be useful in determining a trend over time which may be indicative of degree of engagement and/or importance. In some exemplary embodiments, the metadata based metrics may be measured with respect to one degree from the entity (e.g., between colleagues between manager and subordinates, between entity and direct supervisor, between entity and clients, between entity and other business units, and/or the like).

[0089] It will be noted that the metadata obtained in step 240 may be used in steps 220 and 230 as well. For example, in order to determine connections between entities in the social network, the metadata may be reviewed. The metadata obtained in step 240 is useful, by itself, in the determination of step 250, disclosed hereinbelow.

[0090] In step 250, a score may be determined for each entity based on data obtained in steps 220, 230 and/or 240. In some exemplary embodiments, the score may be a number, such as on a scale between 0 and 1. The score may be comprised of several components, such as a degree of importance of the entity and a degree of engagement. The score may be determined, for example, based on a function of the components, such as for example s - a imp + β eng , where s is the score, alpha and beta are parameters, imp is a degree of importance and eng is a degree of engagement. In some exemplary embodiments, imp and eng may be determined based on the activity of the entities as determined in steps 220-240, such as based on betweenness, degree in, degree out, reach in, reach out, egomap, based on sentiment of communications, type of entity, types of interactions, business issues being dealt with, responsiveness, and so forth.

[0091 J In some exemplary embodiments, the score may be determined also based on additional data associated with the entity, such as financial data and/or Human Resources (HR) data. HR data may be retrieved from an HR system (not shown). Financial data may be retrieved from a billing system (not shown) or payment system (not shown). HR data may include information such as but not limited to education, seniority, sick days, or the like. Financial data may include information such as but not limited to income associated to employee, bonuses paid to employee, salary, or the like. In some exemplary embodiments, using HR and/or financial data may be useful for determining probability that an employee will quit, likelihood of customer satisfaction from interaction with the employee, or the like.

[0092] In some exemplary embodiments, the score may be normalized, such as to be defined within a predetermined range. Additionally or alternatively, a non-polynomial function, such as an exponential function, may be utilized.

[0093] In some exemplary embodiments, entities may be ranked with respect to a reference group comprising similar entities. For example, there may be different types of employees (e.g., project manager, back office personnel, research staff member, members of financial department, or the like). An employee may be compared to a reference group comprising employees of similar types.

[0094] In some exemplary embodiments, based on the score, the entities may be ranked such as to determine which entities are the most valuable to the organization. Additionally or alternatively, and depending on the definition of the score, the entities may be ranked based on degree of importance, degree of engagement, degree of service- orientation, or the like. In some exemplary embodiments, the entities may be ranked based on the score with respect to other entities of the same type.

[0095] In some exemplary embodiments, degree of importance may be computed based on one or more of the following metrics: degree (in and/or out), internal activity (in and/or our), external activity (in and/or out), betweeness, power, reach (in and or out), closeness, thread strength, response replies, unique expertise, tacit expertise, and the like.

[0096] In some exemplary embodiments, thread strength may be a measurement of how the knowledge the entity communicates penetrates the organizations, such as is available to distant entities.

[0097] In some exemplary embodiments, response replies may be a measurement of how fast people respond to communications by the entity, such as an average response time.

[0098] In some exemplary embodiments, tactic expertise may be a measurement of how tactically important the expertise that the entity holds to the organization. An Expertise that is deemed important may be provided by a user, or may be automatically extracted from the ESCs based on usage over time. For example, while Fortran programming language may still be in use in the organization, other emerging programming languages, such as C#, may be deemed important as their usage may grow more important over time. Such information may be extracted automatically from the ESCs.

[0099] In some exemplary embodiments, unique expertise may be a measurement of expertise unique or substantially unique to the entity. In case the entity is one of few entities (e.g., only one, two employees, ten employees located in different facilities, or the like) having a specific knowledge or expertise, the entity's unique expertise measurement may be relatively high. Optionally, unique expertise may be associated only with important expertise.

[00100] In some exemplary embodiments, degree of engagement may be computed based on one or more of the following metrics: sentiment (e.g., total sentiment, sentiment towards groups of entities, such as subordinates, peers, and/or superiors), activity (e.g., superiors activity, peers activity, subordinates activity and/or total activity), response time (e.g., total response time, internal response time and/or external response time), time usage activity, type interactions with other entities, and the like. [0100] Sentiment may be measured toward each entity based on the content of the ESCs. A sentiment measurement with respect to a set of entities may be calculated based sentiments towards each entity of the set.

[0101] Response time may be a measurement indicative of an average response time by the entity to interactions of a set of entities. The response time may be calculated based on response time towards each entity of the set. Response time may be measured with respect to all entities (i.e., total response time), employees (i.e., internal response time), non-employees (i.e., external response time), peers, superiors, subordinates, clients, or the like.

[0102] Time usage activity may be a measurement of how the entity spends it time. The time usage activity measurement may be based on scheduling information. In some embodiments, comparison of meetings of the entity with respect to other similar entities may be performed in determining the time usage activity measurement. Comparison may be based on types of meetings, user-determined categorized, or the like. In some embodiments, time usage activity measurement may be based on ESCs activity, such as email activity. For example, a working time frame of the entity may be determined based on first and last emails of the day. As another example, absent days may be determined based on days with no emailing activity or no work-related emailing activity.

[0103] Type interactions with other entities, such as co-learning measurement and grapevine measurement may be indicative of relationship between entities. While co- learning measurement may be used to measure activity related to receiving or asking for information or assistance, grapevine measurement may measure how connected is the entity to informal chains of information, such as rumor or gossip.

[0104] In some exemplary embodiments, degree of service-orientation may be computed based on one or more of the following metrics: external response time, time usage activity dedicated to client-related work, volume of ESCs to clients, sentiment towards clients, and the like.

[0105] In step 260, output may be provided to the user 140. The output may be provided using a graphical representation to enable the user 140 to grasp the data. In some exemplary embodiments, the user 140 may select between a plurality of different graphical representation, such as between a representation of the social network of entities, social network of business units, charts comparing the entities with respect to one or more parameter, or the like. In some exemplary embodiments, a chart having two axes, one associated with a degree of importance and the other associated with a degree of engagement may be utilized to indicate the measurements of each entity. The user may select the review partial information with respect to one entity, a group of entities, entities within a specific business unit, or entities characterized in other manner.

[0106] In some exemplary embodiments, the graphical representation may be provided to the user in one or more reports. In some exemplary embodiments, the one or more reports may be displayed on a display, printed out, or the like.

[0107] Referring now to Figs 4-12 showing graphical representations of data in accordance with some exemplary embodiments of the disclosed subject matter. The graphical representations may be provided as a printout report, using a screen display, such as a monitor, or the like.

[0108] Fig. 4 shows a bar chart showing for each business unit a degree of connectivity to other business units. For example, business unit 406 is the most connected in total, while business unit 404 is the least connected. Business unit 402 is the most connected to business unit 7. In some exemplary embodiments, a similar bar chart may be provided with respect to other entities, such as employees. It will be noted that in some exemplary embodiments, a business unit entity is an aggregation of entities working in the business unit, or otherwise associated with the business unit. Other types of aggregative entities may be used as well.

[0109J Fig. 5 shows a line chart representing sum of degree out for each entity and sum of reach out for each entity. Entity 2 may be noted as the entity having lowest degree out and reach out values. In some exemplary embodiments, only a portion of the entities may be displayed, so as to enable a human reviewer to grasp the data.

[0110] Fig. 6 shows a line chart representing average response time for each entity. A first entity has an average response time of approximately 4.7 (604) while a second entity has an average response time of approximately 5.9 (602). The chart may be useful to identify responsive and non-responsive entities. The chart may be provided with respect to a portion of the entities, or may relate to a portion of the ESCs, such as only client-related interactions, or the like. [0111] Fig. 7 shows a line chart representing engagement degrees of entities over time. A first entity 702 has a high engagement level, however, it may be noted that the engagement is reducing over time. This may indicate that the first entity 702 is perhaps reevaluating its role within the organization, at risk of leaving the organization or the like. A second entity 704 has a lower engagement level but it is rising. By inspecting engagement levels over time an organization may decide how to reward entities and motivate them. It may further determine whether a specific incentive was effective or not and at which entities the incentives should be focused. For example, at time 710, an incentive was given. The incentive seems to be effective with respect to the second entity 704 but not a third entity 706.

[0112] Fig. 8 shows a chart indicating for each entity its engagement and importance degrees. This chart shows the data in a static manner. In some exemplary embodiments, dynamic manner may be introduced using a third dimension showing changes over time, similar to the information shown in Fig. 7. By inspecting both aspects - engagement as well as importance - determination at which entities to focus may be better, as it incorporates not only a subjective aspect (e.g., engagement), but also an objective aspect of value that the entity may bring to the organization (e.g., importance). In some exemplary embodiments, other charts incorporating different parameters may be utilized.

[0113] In some exemplary embodiments, the chart of Fig. 8 may be divided into portions, such as quadrants 810, 820, 830, 840. In some exemplary embodiments, each quadrant may be associated with entities having different characterization. For example, entities located in quadrant 820 may be considered as leaders as they are characterized in having importance and engagement degrees above predetermined thresholds. As another example, entities located in quadrant 810 may be considered as a risk group of having low productivity or of leaving the organization. Entities in quadrant 810 are deemed important (degree of importance above a threshold) but not engaged (degree of engagement below a threshold). As yet another example, entities located in quadrant 830 may be considered as a redundancy group, as they have low importance and engagement degrees. In some exemplary embodiments, the chart of Fig. 8 may be partitioned into portions that are not necessarily quadrants. Each portion may be defined by a predetermined range of values with respect to each axis. In some exemplary embodiments, a portion may be defined using one or more non-linear curve as borders of the portion, or the like.

[0114] Fig. 9 shows a bar chart indicating activity level and dominance of entities. Specifically, in this exemplary embodiment, information is shows only with respect to entities which are considered as part of leading teams in the organization. Leading teams may be deduced b the NLP, determined using SNA identified by the user, or the like. In some exemplary embodiments, a leading team may be an aggregative entity comprising the employees that are part of the team. The chart shows for each entity sum of degree in, sum of degree out and sum of betweenness the disclosed subject matter determines for each entity.

[0115] Fig. 10 shows a bar chart indicating reach in and reach out values for each entity, in accordance with some exemplary embodiments of the disclosed subject matter.

[0116] Fig. 11 shows a bar chart indicating activity level by business unit, in accordance with some exemplary embodiments of the disclosed subject matter. The activity level is indicated using two different parameters, such as for example sum of degree in, sum of degree out, sum of betweenness, or the like, of the entities comprising each business unit.

[0117] Fig. 12 shows a social network, in accordance with the disclosed subject matter. The social network shows connectivity between the entities, such as generated in step 230 of Fig. 2, In some exemplary embodiments, only a portion of the entities are shown. Additionally or alternatively, only connectivity above a predetermined threshold is displayed. Thereby, making it easier for a human reviewer to comprehend the data. The social network may be fragmented into two or more sections, such as 1210, 1220 and 1230. In some exemplary embodiments, section 1230 may comprise entities that do not have a substantial contribution to the business and/or goals of the organization. In some exemplary embodiments, section 1220 may comprise entities that are involved in the business of the organization. However, section 1210 may comprise those who promote initiatives within the organization and/or produce substantial value to the organization. In some exemplary embodiments, the entities may be fragmented in accordance with dominance level within the social network, in accordance with the active/reactive role in the organization, and the like. In some exemplary embodiments, other types of fragmentation may be determined based on the analysis provided in accordance with the disclosed subject matter.

[0118] Referring now back to Fig. 2. In step 270, based on the data presented to the user 140, the user 140 may deduce some insights to the organization. For example, an entity may be identified as an important link between business units, however the entity may be at risk of leaving due to low engagement degree. There may be a determination to motivate specific employees, such as based on low engagement degree, on high importance degree, on high productivity, or the like. In some exemplary embodiments, there may be a determination to change team members in certain projects, switch between members, or the like. If there is a relatively low engagement degree in one team with respect to other similar teams, or if the engagement degree is in a decreasing trend, it may be wise to change members of the team or otherwise intervene. In some exemplary embodiments, other data such as meeting deadlines, sick days of team members, income attributed to the team, or the like, may also be reviewed prior to making such determinations and/or to identify teams which require intervention. The disclosed subject matter may, therefore, focus management of the organization to deal with places in the organization that require intervention.

[0119] In some exemplary embodiments, the method in Fig. 2 may be repetitive, and be performed again with respect to different sets of ESCs. In some exemplary embodiments, the method in Fig. 2 may be performed periodically.

[0120] Referring now to Fig. 3, showing a block diagram of components of an apparatus for analyzing electronically stored communications, in accordance with some exemplary embodiments of the disclosed subject matter. Apparatus 300 may be adapted to perform computerized methods, such as depicted in Figure 2.

[0121] In some exemplary embodiments, apparatus 300 may comprise a processor 302. The processor 302 may be a Central Processing Unit (CPU), a microprocessor, an electronic circuit, an Integrated Circuit (IC) or the like. Alternatively, the apparatus 300 can be implemented as firmware writen for or ported to a specific processor such as digital signal processor (DSP) or microcontrollers, or can be implemented as hardware or configurable hardware such as field programmable gate array (FPGA) or application specific integrated circuit (ASIC). The processor 302 may be utilized to perform computations required by the apparatus 300 or any of it subcomponents.

[0122] In some exemplary embodiments of the disclosed subject matter, the apparatus 300 may comprise an Input/Output (I/O) device 304. The I O device 304 may be utilized to receive input or provide output to and from the apparatus 300, for example receiving specific user commands or parameters related to the apparatus 300, storing and retrieving information to and from a database, providing output, or the like.

[0123] In some exemplary embodiments, the apparatus 300 may comprise one or more storage devices such as storage device 305. The storage device 305 may be persistent or volatile. For example, the storage device 305 can be a Flash disk, a Random Access Memory (RAM), a memory chip, an optical storage device such as a CD, a DVD, or a laser disk; a magnetic storage device such as a tape, a hard disk, storage area network (SAN), a network attached storage (NAS), or others; a semiconductor storage device such as Flash device, memory stick, or the like. In some exemplary embodiments, the storage device 305 may retain program code operative to cause the processor 302 to perform acts associated with any of the steps shown in Fig. 2 above.

[0124] In some exemplary embodiments, a Natural Language Processing (NLP) module 310 may be configured to analyze content of the ESCs using NLP methods. In some exemplary embodiments, the NLP module 310 may be configured to perform steps 220, 222, 224, 226, 228, and/or 229 of Figure 2.

[0125J In some exemplary embodiments, a Social Network Analysis (SNA) module 320 may be configured to generate a social network of the entities based upon the ESCs and analyze the social network. In some exemplary embodiments, the SNA module 320 may be configured to perform steps 230, 232 and/or 234 of Figure 2.

[01261 In some exemplary embodiments, a metadata extractor 330 may be configured to extract metadata of the ESCs. In some exemplary embodiments, the metadata extractor may be configured to perform step 240 of Figure 2.

[0127] In some exemplary embodiments, a graphical display generator 340 may be configured to generate a graphical display of data determined by the analysis apparatus 300. In some exemplary embodiments, the graphical display may be provided to a user in a display, such as a monitor, in a printout, or the like. In some exemplary embodiments, the graphical display generator 340 may be configured to perform step 260 of Figure 2, and/or provide a graphical representation such as exemplified in Figures 4-12.

[0128 J In some exemplary embodiments, a score determinator 350 may be configured to determine a score of an entity. The score determinator 350 may determine the score based on the output of the NLP module 310, the SNA module 320 and/or the metadata extractor 330.

[0129] The score determinator 350 may be configured to perform step 250 of Figure 2. The score determinator 350 may be utilized repreatedly to determine scores of all entities.

[0130] The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart and some of the blocks in the block diagrams may represent a module, segment, or portion of program code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.

[0131] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "comprises" and/or "comprising," when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.

[0132] As will be appreciated by one skilled in the art, the disclosed subject matter may be embodied as a system, method or computer program product. Accordingly, the disclosed subject matter may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a "circuit," "module" or "system." Furthermore, the present disclosure may take the form of a computer program product embodied in any tangible medium of expression having computer-usable program code embodied in the medium.

[0133] Any combination of one or more computer usable or computer readable medium(s) may be utilized. The computer-usable or computer-readable medium may be, for example but not limited to, any non-transitory computer-readable medium, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium. More specific examples (a non-exhaustive list) of the computer-readable medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CDROM), an optical storage device, a transmission media such as those supporting the Internet or an intranet, or a magnetic storage device. Note that the computer-usable or computer-readable medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via, for instance, optical scanning of the paper or other medium, then compiled, interpreted, or otherwise processed in a suitable manner, if necessary, and then stored in a computer memory. In the context of this document, a computer-usable or computer-readable medium may be any medium that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The computer-usable medium may include a propagated data signal with the computer-usable program code embodied therewith, either in baseband or as part of a carrier wave. The computer usable program code may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, and the like.

[0134] Computer program code for carrying out operations of the present disclosure may be written in any combination of one or more programming languages, including but not limited to an object oriented programming language such as Java, Smalltalk, C++, C# or the like, conventional procedural programming languages, such as the "C" programming language or similar programming languages, and Natural Language Programming such as Python, MATLAB, Octave, or the like. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (W AN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).

[0135] The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of the present disclosure has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the disclosure in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the disclosure. The embodiment was chosen and described in order to best explain the principles of the disclosure and the practical application, and to enable others of ordinary skill in the art to understand the disclosure for various embodiments with various modifications as are suited to the particular use contemplated.