Disclosure of Invention
The embodiment of the application provides a method and a device for playing a television program.
In a first aspect, an embodiment of the present application provides a method for playing a television program, including: and confirming the identity of the user in response to receiving the play request of the user. And determining whether a name of a target television program which is matched with the identity of the user and the current time and has the television program state as enabled exists in a pre-generated recommendation table, wherein the recommendation table is used for representing the corresponding relation among the identity of the user, the time point, the television program name and the television program state. And if so, playing the target television program.
In some embodiments, the recommendation table further comprises a confidence and a confidence threshold; and the method further comprises: and if not, selecting at least one candidate television program which is matched with the identity and the current time of the user and has the confidence coefficient larger than the confidence coefficient threshold value from the recommendation table to generate preview information. And outputting the preview information for the user to select the television program from the at least one candidate television program. In response to detecting that the user selected a television program from the at least one candidate television program, playing the selected television program and setting the status of the selected television program in the recommendation list to enabled.
In some embodiments, the method further comprises: in response to detecting that the user switches the target television program within a predetermined time, setting the state of the target television program in the recommendation table to be not enabled, and adjusting the threshold value in the recommendation table.
In some embodiments, confirming the identity of the user comprises: acquiring characteristic information of a user, wherein the characteristic information comprises at least one of the following items: voice, fingerprint, account number. And matching the characteristic information with a pre-registered identity characteristic information table, and determining the identity of the user according to the characteristic information, wherein the identity characteristic information table is used for representing the corresponding relation between the identity of the user and the characteristic information of the user.
In some embodiments, the recommendation table is generated by: acquiring a historical operation data set, wherein the historical operation data comprises: identity of the user, point in time, operational attribute, attribute value. Generating an event table according to the historical operation data set, wherein the event table comprises at least one piece of event information, and the event information comprises: the event identification is generated by the operation attribute and the attribute value according to a preset coding rule, and the time point is the average occurrence time of the event. And converting the historical operation data into training data for big data analysis, and preprocessing an event table to delete event information corresponding to events with duration less than a preset duration threshold. And for the event identification in at least one event identification related to the preprocessed event table, determining the occurrence probability of the event corresponding to the event identification in a preset period according to the event table and the training data as the confidence coefficient of the event corresponding to the event identification. And generating a recommendation table according to the preprocessed event table, the confidence degrees of the training data and the events corresponding to the event identifications and a preset confidence degree threshold value of the event corresponding to the event identifications.
In some embodiments, the predetermined period comprises a first predetermined period and a second predetermined period; and determining the occurrence probability of the event corresponding to the event identifier in a predetermined period according to the event table as the confidence of the event corresponding to the event identifier, including: and determining the occurrence probability of the event corresponding to the event identification in a first predetermined period according to the event table as a first confidence coefficient of the event corresponding to the event identification. And determining the occurrence probability of the event corresponding to the event identification in a second predetermined period according to the event table as a second confidence of the event corresponding to the event identification.
In some embodiments, the recommendation table further includes a correspondence between the ambient volume and the television volume; and the method further comprises: and acquiring the current environment volume. And inquiring the television volume corresponding to the current environment volume matched with the current time in the recommendation table. And determining the inquired television volume as the volume for playing the television program.
In some embodiments, the method further comprises: and adjusting the threshold corresponding to the volume operation in the recommendation table in response to detecting that the user adjusts the volume.
In a second aspect, an embodiment of the present application provides an apparatus for playing a television program, including: a confirming unit configured to confirm an identity of the user in response to receiving the play request of the user. The matching unit is configured to determine whether a name of a target television program which is matched with the identity of the user and the current time and has a television program state of being enabled exists in a pre-generated recommendation table, wherein the recommendation table is used for representing the corresponding relation among the identity of the user, the time point, the name of the television program and the state of the television program. And the playing unit is configured to play the target television program if the name of the target television program which is matched with the identity of the user and the current time and has the enabled television program state exists in the pre-generated recommendation table.
In some embodiments, the recommendation table further comprises a confidence and a confidence threshold; and the apparatus further comprises: and the selecting unit is configured to select at least one candidate television program which is matched with the identity and the current time of the user and has the confidence degree larger than the confidence degree threshold value from the recommendation table to generate the preview information if the name of the target television program which is matched with the identity and the current time of the user and has the enabled television program state does not exist in the pre-generated recommendation table. An output unit configured to output preview information for a user to select a television program from the at least one candidate television program. The television program recommendation system comprises a detection unit, a recommendation list and a recommendation processing unit, wherein the detection unit is configured to respond to the detection that a user selects a television program from at least one candidate television program, play the selected television program and set the state of the selected television program in the recommendation list to be enabled.
In some embodiments, the detection unit is further configured to include: in response to detecting that the user switches the target television program within a predetermined time, setting the state of the target television program in the recommendation table to be not enabled, and adjusting the threshold value in the recommendation table.
In some embodiments, the validation unit is further configured to: acquiring characteristic information of a user, wherein the characteristic information comprises at least one of the following items: voice, fingerprint, account number. And matching the characteristic information with a pre-registered identity characteristic information table, and determining the identity of the user according to the characteristic information, wherein the identity characteristic information table is used for representing the corresponding relation between the identity of the user and the characteristic information of the user.
In some embodiments, the recommendation table is generated by: a data filtering module configured to obtain a set of historical operation data, wherein the historical operation data comprises: the identity, time point, operation attribute and attribute value of the user; an event extraction module configured to generate an event table according to the historical operation data set, wherein the event table includes at least one piece of event information, and the event information includes: the event identification is generated by the operation attribute and the attribute value according to a preset coding rule, and the time point is the average occurrence time of the event; the data preprocessing module is configured to convert the historical operation data into training data for big data analysis and preprocess an event table to delete event information corresponding to events with duration less than a preset duration threshold, and comprises a time segmentation module and a statistical event module; the recommendation table generation module is configured to determine, according to the event table and the training data, an occurrence probability of an event corresponding to the event identifier in a predetermined period as a confidence of the event corresponding to the event identifier, for the event identifier in the at least one event identifier related to the preprocessed event table; and generating a recommendation table according to the preprocessed event table, the confidence degrees of the training data and the events corresponding to the event identifications and a preset confidence degree threshold value of the event corresponding to the event identifications.
In some embodiments, the predetermined period comprises a first predetermined period and a second predetermined period; and the recommendation table generation module is further configured to: and determining the occurrence probability of the event corresponding to the event identification in a first predetermined period according to the event table as a first confidence coefficient of the event corresponding to the event identification. And determining the occurrence probability of the event corresponding to the event identification in a second predetermined period according to the event table as a second confidence of the event corresponding to the event identification.
In some embodiments, the recommendation table further includes a correspondence between the ambient volume and the television volume; and the apparatus further comprises a volume determination unit configured to: and acquiring the current environment volume. And inquiring the television volume corresponding to the current environment volume matched with the current time in the recommendation table. And determining the inquired television volume as the volume for playing the television program.
In some embodiments, the volume determination unit is further configured to: and adjusting the threshold corresponding to the volume operation in the recommendation table in response to detecting that the user adjusts the volume.
In a third aspect, an embodiment of the present application provides an electronic device, including: one or more processors; a storage device having one or more programs stored thereon which, when executed by one or more processors, cause the one or more processors to implement a method as in any one of the first aspects.
In a fourth aspect, the present application provides a computer readable medium, on which a computer program is stored, wherein the program, when executed by a processor, implements the method according to any one of the first aspect.
According to the method and the device for playing the television program, the recommendation table generated according to the historical operation data of the user is obtained after the identity of the user is identified. And searching the television program matched with the identity and the current time of the user from the recommendation table for playing. Therefore, the convenience of watching the television by the user is improved, and the television program recommendation with rich pertinence is realized.
Detailed Description
The present application will be described in further detail with reference to the following drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the relevant invention and not restrictive of the invention. It should be noted that, for convenience of description, only the portions related to the related invention are shown in the drawings.
It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict. The present application will be described in detail below with reference to the embodiments with reference to the attached drawings.
Fig. 1 shows anexemplary system architecture 100 to which embodiments of the method for playing back television programs or the apparatus for playing back television programs of the present application may be applied.
As shown in fig. 1, thesystem architecture 100 may includeclients 101, 102, 103, 104, asmart tv 105, asmart tv 107, anetwork 106, and aserver 107, aserver 105.Network 106 serves as a medium to provide a communication link betweensmart tv 105 andserver 107,server 105.Network 106 may include various connection types, such as wired, wireless communication links, or fiber optic cables, among others.
The user may use theclients 101, 103, 104 to manipulate thesmart tv 107 through the IoT (Internet of things). The conventionalremote controller 102 directly controls thesmart tv 107.
Thesmart television 107 is a new television product having a fully-open platform and carrying an operating system, and a user can install and uninstall various application software by himself while enjoying ordinary television content, and continuously expand and upgrade functions.
Theserver 105 may be a control center of the internet of things, and is responsible for accessing the network of the device, sending a control command, acquiring the device state, and the like, and is a transfer between the client and the smart television. Such as a background tv program server that provides support for tv programs displayed on thesmart tv 107. The background television program server may analyze and perform other processing on the received data such as the playing request, and feed back a processing result (e.g., a television program) to the smart television.
The server may be hardware or software. When the server is hardware, it may be implemented as a distributed server cluster formed by multiple servers, or may be implemented as a single server. When the server is software, it may be implemented as multiple pieces of software or software modules (e.g., multiple pieces of software or software modules used to provide distributed services), or as a single piece of software or software module. And is not particularly limited herein.
It should be noted that the method for playing the television program provided in the embodiment of the present application may be executed by thesmart television 107, and may also be executed by theserver 105. Accordingly, the device for playing back the television program may be disposed in thesmart television 107 or may be disposed in theserver 105. And is not particularly limited herein.
It should be understood that the number of clients, smart televisions, and servers in fig. 1 is merely illustrative. There may be any number of clients, smart tvs, and servers, as desired for implementation.
With continued reference to fig. 2, aflow 200 of one embodiment of a method for playing a television program in accordance with the present application is shown. The method for playing the television program comprises the following steps:
step 201, in response to receiving a play request of a user, confirming the identity of the user.
In this embodiment, an execution subject of the method for playing a television program (e.g., the smart television shown in fig. 1) may receive a playing request from a client with which a user performs television remote control in a wired connection manner or a wireless connection manner. The broadcast request may include information such as a channel number and a client identifier. The identity of the user may be confirmed by the client identification. If the user uses a conventional remote control, the user is marked as a feature user.
In some optional implementations of this embodiment, confirming the identity of the user includes: acquiring characteristic information of a user, wherein the characteristic information comprises at least one of the following items: voice, fingerprint, account number. And matching the characteristic information with a pre-registered identity characteristic information table, and determining the identity of the user according to the characteristic information, wherein the identity characteristic information table is used for representing the corresponding relation between the identity of the user and the characteristic information of the user. The identity of the user may be identified by voice, fingerprint, or login account.
Step 202, determining whether the name of the target television program which is matched with the identity of the user and the current time and has the enabled television program status exists in the pre-generated recommendation table.
In this embodiment, the recommendation table is used to represent a corresponding relationship between the identity of the user, a time point, a name of the television program, and a state of the television program. The recommendation table may include at least one recommendation rule. Each recommendation rule corresponds to a state. If the operation attribute is a channel, the state of the recommendation rule indicates the state of the television program. If the operation attribute is volume, the state of the recommendation rule indicates the state of volume. The selectable time point matches the current time and the television program that the user has recently selected. The time points may also be refined to distinguish the type of date, e.g., weekday, weekend, holiday, etc. And if the date type is the same as that of the current time, the time point is matched with the current time in the same preset time interval. For example, time intervals are defined in advance, starting from 0 minutes per hour, one time interval every 15 minutes. The time points in the recommendation table are 7:00, and the current time is 7: 05, then also belong to the same time interval.
The recommendation table can be generated by the smart television or the server. The recommendation table is generated by the following steps:
step 2021, obtain historical operating data set.
This step is performed by the data filtering module. Wherein the historical operating data comprises: identity of the user, point in time, operational attribute, attribute value. And filtering data according to the user characteristic information, and filtering out the historical operation data of the user level. The user characteristic information includes account information of the IoT client (an application of the client is typically associated with an account), a voice of the user (for a voice-controlled device, a voice characteristic of the user is obtained), and fingerprint information of the user (the client, such as a mobile phone, has a function of identifying a fingerprint). A person who cannot identify the user, for example, using a remote control, is considered a particular user.
Step 2022, generate an event table from the historical operating data set.
This step is performed by the event extraction module. Wherein, the event table includes at least one piece of event information, and the event information includes: the event identification is generated by the operation attribute and the attribute value according to a preset coding rule, and the time point is the average occurrence time of the event.
For the operation of a user on a television, abstract representation is firstly carried out, and then big data analysis is carried out. Scanning operation database, which constitutes a { attribute: value }. If the values are continuous values, further discretization can be performed, such as volume, brightness, saturation, etc. The encoding rule of the event identifier is as follows: and event identification is operation attribute identification + attribute value identification. For the operation attribute flag, the operation "switch" is denoted by 001, the operation "channel" is denoted by 002, and the operation "volume" is denoted by 003. For the attribute value identifications, numbering is carried out from 1, and each attribute value identification corresponds to one attribute value or one attribute value interval. For example, the event id 00101 can be decomposed into an operation attribute id 001+ attribute value id 01, where the first three bits 001 represent "on/off" and the last two bits 01 represent attribute value 1, i.e., turning on the television. The event identifier 00201 can be decomposed into an operation attribute identifier 002+ attribute value identifier 01, wherein the first three bits 002 represent "channel" and the last two bits 01 represent attribute value 1, i.e. channel 1 is selected. The event identifier 00301 can be decomposed into an operation attribute identifier 003+ attribute value identifier 01, wherein the first three bits 003 represent "volume" and the last two bits 01 represent the attribute value [0,10], i.e., the selected volume is between 0 and 10.
| Event identification | Operational Properties | Attribute value |
| 00101 | Switch with a switch body | 1 |
| 00102 | Switch with a switch body | 0 |
| 00201 | Channel with a plurality of channels | 1 |
| 00202 | Channel with a plurality of channels | 2 |
| … | | |
| 00301 | Volume of sound | [0,10] |
| 00302 | Volume of sound | [11,20] |
| … | | |
TABLE 1
Step 2023, convert the historical operating data into training data for big data analysis, and preprocess the event table to delete the event information corresponding to the event whose duration is less than the predetermined duration threshold.
This step is performed by the data pre-processing module. The data preprocessing module is used for converting historical operation data of a user into training data convenient for big data analysis, and comprises the following sub-modules:
1. time division module
The time of day is divided into k segments, which can be based on an average segmentation method, but is suggested to be based on event intensity.Such as daytime on weekdays, television operation is rare, coarse-grained split time (one segment in 2 hours); the activities of operating a television at night are frequent, with a fine granularity of time (10 minutes for each). Thereby forming a time series of length K for each day of activity<T1,T2,…Tk>。
2. Statistical event module
And recording the daily behavior of the user by combining the output of the event extraction module. The time interval of the time points on the same resource (such as a channel) is considered to judge whether the operation is the operation which is interested by the user, for example, the following events are in the stream, the 00201 and 00202 events have short duration and are the operations which are not interested by the user, and the operations are removed in the process of statistics. 00203 events are long in duration and are of interest to the user, so the statistics are added. The event may be traversed, and if the current event has the same identifier as the previous event and the time difference is less than a predetermined time threshold, the event is considered to be an event that is not of interest to the user, and the previous event is replaced by the current event, that is, the previous event is deleted. As shown in table 2 below:
| Time | event identification |
| 9:01 | 00201 |
| 9:02 | 00202 |
| 9:03 | 00203 |
| 9:30 | 00204 |
TABLE 2
The first three bits of the event identifier represent operation attributes, the second two bits are attribute values, the first three bits of the event identifier are 002, namely, the operation object is a channel, the event duration is short, only one minute exists, and the event duration is 00203 for 27 minutes. Assuming that the predetermined time threshold is 5 minutes, the 00203 event can be retained and the 00201, 00202 events deleted. 00204 when an event is no longer identified 002 for an operational attribute after the event, the 00204 event is also retained in the event table. The updated event table is shown in table 3:
| Time | event identification |
| 9:03 | 00203 |
| 9:30 | 00204 |
TABLE 3
Dividing the time into k segments, and sorting out an event table as shown in the following table, wherein the content of the time segments is provided by a time dividing module, the content of the events is provided by a statistical event module, and T isi...T2kRepresents a time period:
| date | Time period | Event identification |
| 1 | Ti | 00101,00201 |
| 1 | … | … |
| 1 | Tk | 00204,00102 |
| 2 | Tk+1 | 00101,00201,00203,00321 |
| 2 | …. | … |
| 2 | T2k | 00205,00102 |
| … | … | … |
TABLE 4
Step 2024, for an event identifier of the at least one event identifier related to the preprocessed event table, determining, according to the event table, an occurrence probability of an event corresponding to the event identifier in a predetermined period as a confidence of the event corresponding to the event identifier.
This step is performed by the build prediction model module. The module obtains the rule of television playing based on the training data set obtained by the data preprocessing module, and needs to consider:
1. since the tv broadcasting rule and the date type have a close relationship, the time is classified into: weekday, weekend, holiday.
2. Since there is a certain period of the tv program, for example, after the user is interested in the series, the user may be interested in the program of another channel, so the rule with higher timeliness is focused preferentially. According to the length of the statistical period n, the method is divided into a short-term rule and a long-term rule. (for example, n-3 recent rules and n-10 long-term rules). The first predetermined period may be set to a short period, the first confidence is a near-term confidence, and the second predetermined period is set to a long period, the second confidence is a long-term confidence.
3. Screening out n statistical cycles within the same time period { T } for the same date typei,Tk+i,T2k+i,…Tnk+iList of events ELi,ELk+i,EL2k+i,…ELnk+iIn which ELiIs the set of events that occur for the Ti time period. The probability of occurrence of each event E is counted, and this value is also used as a measure of the reliability index (confidence) of the rule.
The probability of occurrence of event E ═ the number of occurrences of E/statistical period n × 100%
4. The threshold is defined, with 50% as the initial threshold, which can be adjusted step by step later according to the user's behavior. Events above the threshold are valuable as a basis for recommendation and automatic playback.
Valuable event E ═ event E probability of occurrence > threshold
5. And (4) refining the rule, and further determining the occurrence time and the attribute value of the valuable event E. Since the time is segmented during data preprocessing, the time T is an interval, not an exact time point, for example, T period corresponds to [7:00,7:30], but E occurs mostly at 7:15, then { time point: 7:15 is more reasonable as the trigger time. For event E, if the value is an interval, such as { volume: [11,20] } this event, if most of the values are 15, then { volume: 15 will be more accurate. The present solution refines the recommendation rules using the average time of occurrence and the average value of the events.
Step 2025, generating a recommendation table according to the preprocessed event table and the confidence of the event corresponding to each event identifier and the preset confidence threshold of the event corresponding to each event identifier.
This step is performed by the build prediction model module. The recommendation tables generated are shown in the following table. Wherein { user }, { time type }, { time point }, and { ambient volume } belong to the trigger condition. { operation attribute }, { attribute value } belong to triggered events. { recent confidence } and { long-term confidence } are used to measure reliability, where recent confidence corresponds to confidence for the first predetermined period and long-term confidence corresponds to confidence for the second predetermined period. { threshold } represents an estimate of the user's expectations. The threshold value of each rule is different and can be dynamically adjusted. If the recommended play rule is not accepted by the user, the threshold of the rule is raised. { State } represents whether the user approves the recommendation rule, and disapproves the recommendation rule.
TABLE 5
And step 203, if the program exists, playing the target television program.
In this embodiment, according to the current condition, the most matching and most credible playing rule is searched in the recommendation table, and the playing rule is recommended to the user or automatically played. The current conditions may include information such as the identity of the user, the current time, etc. Ambient volume may also be included. And determining the current time type and time point according to the current time, and searching the operation attribute and the attribute value of which the state is enabled and the time type and the time point which correspond to the user from the recommendation table. For example, the current time is 2018, 8, 3, friday, 7:00, the program of channel 1 is selected according to table 5 for playing.
And 204, if the program does not exist, selecting at least one candidate television program which is matched with the identity and the current time of the user and has the confidence degree larger than the confidence degree threshold value from the recommendation table to generate preview information.
In this embodiment, if only one confidence level is counted in the near term and the far term, at least one candidate tv program that matches the user's identity and current time and has a confidence level greater than a confidence level threshold is selected from the recommendation table to generate the preview information. The preview information may include information such as a screenshot of the program, the title of the program, etc. So that the user selects the target television program according to the preview information. And if the recent confidence and the long-term confidence are counted, if the candidate television programs with the recent confidence greater than the confidence threshold exist in the recommendation table, generating preview information according to the candidate television program corresponding to the rule with the highest recent confidence. Otherwise, judging whether the candidate television programs with the long-term confidence degrees larger than the confidence degree threshold exist in the recommendation table, and if so, generating preview information according to the candidate television program corresponding to the rule with the highest long-term confidence degree. If not, no output is provided.
Optionally, at least one candidate tv program that matches the user's identity and current time and has both a recent confidence level and a long-term confidence level greater than a confidence threshold may be selected from the recommendation table to generate preview information. If the number of candidate television programs exceeds the predetermined number threshold, selecting the candidate television programs for which the predetermined number threshold recent confidence is greater than the confidence threshold.
Step 205, outputting the preview information for the user to select the tv program from at least one candidate tv program.
In this embodiment, the preview information is displayed on the screen, and the user can select a target television program to be watched through a client such as a remote controller or a mobile phone.
In response to detecting that the user selects a television program from the at least one candidate television program, the selected television program is played and the status of the selected television program in the recommendation list is set to enabled,step 206.
In this embodiment, after receiving a selection instruction sent by a client, the smart television plays a television program according to an instruction of a user. And sets the status of the selected television program in the recommendation list to enabled. Alternatively, if the user selects the volume, the state of the volume is set to enabled, and the state of the volume that is disabled by the user is set to not enabled.
In some optional implementations of this embodiment, the method further includes: in response to detecting that the user switches the target television program within a predetermined time, setting the status of the target television program in the recommendation table to not enabled, and adjusting the threshold in the recommendation table. And if the user switches the recommended television programs within the preset time, which indicates that the user does not approve the recommendation, setting the state corresponding to the recommendation rule in the recommendation table selected by the recommendation as not enabled. And the threshold is adjusted up. The threshold may be adjusted by a fixed step size, for example 5%, each time a user switching the target television program is detected within a predetermined time. Or the fixed step length can be adjusted once after accumulating a certain number of times.
With continuing reference to fig. 3a-3c, fig. 3a-3c are schematic diagrams of application scenarios of the method for playing back television programs according to the present embodiment. In the application scenario of fig. 3a, the method for playing the television program is deployed on the server side. The server collects operation data of at least one user from at least one client. And then generating a recommendation table through a data filtering module, an event extraction module, a data preprocessing module and a recommendation table generating module. When the user starts the television, the server acquires the characteristic information of the user so as to identify the identity of the user, and then the identity and the current time of the user are matched with the recommendation rules in the recommendation list through the matching unit so as to find out the suitable television program. And then sending a command for playing the television program to the intelligent television.
In the application scenario of fig. 3b, the method for playing back a television program is deployed at the client. The user inputs the operation data of the user through the client. The client generates the recommendation table through the data filtering module, the event extraction module, the data preprocessing module and the recommendation table generating module. When the user starts the television, the client acquires the characteristic information of the user so as to identify the identity of the user, and then the identity and the current time of the user are matched with the recommendation rules in the recommendation list through the matching unit so as to find out the suitable television program. Or acquiring the ambient volume through the client or the smart television, and searching the volume matched with the current ambient volume from the recommendation table to be used as the volume for playing the television program. And then sending a command for playing the television program to the intelligent television, or sending a command for playing the television program to a server, and then forwarding the command for playing the television program to the intelligent television by the server.
In the application scenario of fig. 3c, the method for playing the television program is deployed at the smart television. The intelligent television directly collects the operation data of at least one user through at least one client or indirectly collects the operation data of at least one user through the server. The intelligent television generates a recommendation table through a data filtering module, an event extraction module, a data preprocessing module and a recommendation table generating module. When the user starts the television, the smart television acquires the characteristic information of the user so as to identify the identity of the user, and then matches the identity and the current time of the user with the recommendation rules in the recommendation table through the matching unit to find out a suitable television program. Or acquiring the ambient volume through the client or the smart television, and searching the volume matched with the current ambient volume from the recommendation table to be used as the volume for playing the television program. And then the television program is played through the playing unit.
According to the method provided by the embodiment of the application, the behavior habits of the user are mined by associating the television programs with the operation of the user, so that the behavior of the user is simulated to the greatest extent, and the television is recommended to be played.
With further reference to fig. 4, aflow 400 of yet another embodiment of a method for playing a television program is shown. Theprocess 400 of the method for playing back a television program includes the following steps:
step 401, in response to receiving a play request of a user, confirming an identity of the user.
Step 401 is substantially the same asstep 201, and therefore is not described again.
Step 402, obtaining the current environment volume, and inquiring the television volume corresponding to the current environment volume matched with the current time in the recommendation table.
In this embodiment, an execution subject of the method for playing a television program (e.g., the smart television shown in fig. 1) may acquire the ambient volume through a sensor installed on the client or the smart television. The collected ambient volume may also be sent to a server. In the generation of the recommendation table, the environmental volume is included in the user operation data used. Therefore, the ambient volume is included in the recommendation table. The operation attribute possibly corresponding to different environment volumes is different in the attribute value of "volume". If the ambient volume is large, the volume of the television is correspondingly large. In addition to this, the influence of time, such as the same ambient volume, is taken into account, but if the tv program is played in the middle of the night, the tv volume will usually be smaller than in the middle of the day.
Instep 403, the searched television volume is determined as the volume for playing the television program.
In this embodiment, whether the television program to be recommended is found or not, the queried television volume may be determined as the volume at which the television program is played. If the television volume corresponding to the current environment volume matched with the current time cannot be inquired, the volume of the latest volume adjustment in the recommendation table can be inquired as the volume of the played television program.
Step 404, determining whether the name of the target television program which is matched with the identity of the user and the current time and has the television program state of being enabled exists in the pre-generated recommendation table.
Step 404 is substantially the same asstep 202 and therefore will not be described in detail.
And step 405, if yes, playing the target television program with the determined volume.
Step 405 is substantially the same asstep 203 except that the volume at which the television program is played is identified by the recommendation table.
And step 406, if not, selecting at least one candidate television program which is matched with the identity and the current time of the user and has the confidence degree larger than the confidence degree threshold value from the recommendation table to generate preview information.
Step 406 is substantially the same asstep 204 and therefore will not be described again.
Step 407, outputting the preview information for the user to select the tv program from the at least one candidate tv program.
Step 407 is substantially the same asstep 205, and therefore is not described in detail.
Step 408, in response to detecting that the user selects a television program from the at least one candidate television program, playing the selected television program at the determined volume and setting the status of the selected television program in the recommendation list to enabled.
Step 408 is substantially the same asstep 206 except that the volume at which the television program is played is identified by the recommendation table.
In some optional implementations of this embodiment, the method further includes: and adjusting the threshold corresponding to the volume operation in the recommendation table in response to detecting that the user adjusts the volume. And if the volume is detected to be adjusted by the user, indicating that the user does not approve the recommended volume, and increasing the threshold corresponding to the volume operation. And also updates the recommendation table according to the operation data for adjusting the volume. The recommendation table may be updated in real time each time operational data is received, or may be updated periodically after a batch of operational data is collected.
As can be seen from fig. 4, compared with the embodiment corresponding to fig. 2, theflow 400 of the method for playing back a television program in this embodiment highlights the step of adaptively adjusting the volume. Therefore, the scheme described in this embodiment can obtain the rule of the environmental volume and the volume selected by the user through big data analysis according to the relationship between the current environmental volume and the volume selected by the user. Therefore, when the television program is played, the appropriate volume can be adaptively selected for playing.
With further reference to fig. 5, as an implementation of the methods shown in the above-mentioned figures, the present application provides an embodiment of an apparatus for playing a television program, where the embodiment of the apparatus corresponds to the embodiment of the method shown in fig. 2, and the apparatus may be specifically applied to various electronic devices.
As shown in fig. 5, theapparatus 500 for playing back a television program of the present embodiment includes: aconfirmation unit 501, amatching unit 502 and aplaying unit 503. Wherein the confirmingunit 501 is configured to confirm the identity of the user in response to receiving the play request of the user. Thematching unit 502 is configured to determine whether a name of a target television program matching the identity of the user and the current time and having a television program status of enabled exists in a pre-generated recommendation table 504, wherein the recommendation table is used for representing a corresponding relationship between the identity of the user, a time point, the name of the television program, and the status of the television program. Theplaying unit 503 is configured to play the target television program if there is a name of the target television program in the pre-generated recommendation table, which matches the identity of the user and the current time and the status of the television program is enabled.
In this embodiment, the specific processes of theconfirmation unit 501, thematching unit 502 and theplaying unit 503 of theapparatus 500 for playing a television program may refer to step 201,step 202 and step 203 in the corresponding embodiment of fig. 2.
In some optional implementations of the present embodiment, the recommendation table 504 further includes a confidence and a confidence threshold. The device also includes: a selecting unit (not shown) configured to select at least one candidate television program from the recommendation table, which matches the identity and the current time of the user and has a confidence degree greater than a confidence degree threshold value, to generate preview information if the name of the target television program, which matches the identity and the current time of the user and has the enabled television program status, does not exist in the pre-generated recommendation table; an output unit (not shown) configured to output preview information for a user to select a television program from the at least one candidate television program; a detecting unit (not shown) configured to respond to the detection that the user selects the television program from the at least one candidate television program, play the selected television program and set the state of the selected television program in the recommendation list to enable.
In some optional implementations of this embodiment, the detection unit is further configured to include: in response to detecting that the user switches the target television program within a predetermined time, setting the status of the target television program in the recommendation table to not enabled, and adjusting the threshold in the recommendation table.
In some optional implementations of this embodiment, thevalidation unit 501 is further configured to: acquiring characteristic information of a user, wherein the characteristic information comprises at least one of the following items: voice, fingerprint, account number. And matching the characteristic information with a pre-registered identity characteristic information table, and determining the identity of the user according to the characteristic information, wherein the identity characteristic information table is used for representing the corresponding relation between the identity of the user and the characteristic information of the user.
In some optional implementations of this embodiment, the recommendation table is generated by thegeneration unit 505. Thegeneration unit 505 includes: adata filtering module 5051 configured to obtain a historical operation data set, wherein the historical operation data includes: identity of the user, point in time, operational attribute, attribute value. Theevent extraction module 5052 is configured to generate an event table according to the historical operation data set, wherein the event table includes at least one piece of event information, and the event information includes: the user identity, time type, time point, event identification, operation attribute and attribute value, wherein the event identification is generated by the operation attribute and the attribute value according to a preset coding rule, and the time point is the average occurrence time of the event. Thedata preprocessing module 5053 is configured to preprocess the event table to delete event information corresponding to events having a duration less than a predetermined duration threshold. A recommendationtable generating module 5054 configured to, for an event identifier of the at least one event identifier involved in the preprocessed event table, determine, according to the event table, an occurrence probability of an event corresponding to the event identifier in a predetermined period as a confidence of the event corresponding to the event identifier; and generating a recommendation table according to the preprocessed event table, the confidence of the event corresponding to each event identifier and a preset confidence threshold of the event corresponding to each event identifier.
In some optional implementations of this embodiment, the predetermined period includes a first predetermined period and a second predetermined period. The recommendationtable generation module 5054 is further configured to: and determining the occurrence probability of the event corresponding to the event identification in a first predetermined period according to the event table as a first confidence coefficient of the event corresponding to the event identification. And determining the occurrence probability of the event corresponding to the event identification in a second predetermined period according to the event table as a second confidence of the event corresponding to the event identification.
In some optional implementations of this embodiment, the recommendation table further includes a correspondence between the ambient volume and the television volume. Theapparatus 500 further comprises a volume determination unit (not shown) configured to: and acquiring the current environment volume. And inquiring the television volume corresponding to the current environment volume matched with the current time in the recommendation table. And determining the inquired television volume as the volume for playing the television program.
In some optional implementations of this embodiment, the volume determination unit is further configured to: and adjusting the threshold corresponding to the volume operation in the recommendation table in response to detecting that the user adjusts the volume.
Referring now to FIG. 6, a block diagram of acomputer system 600 suitable for use in implementing an electronic device (e.g., the client/server shown in FIG. 1) of an embodiment of the present application is shown. The electronic device shown in fig. 6 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present application.
As shown in fig. 6, thecomputer system 600 includes a Central Processing Unit (CPU)601 that can perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM)602 or a program loaded from astorage section 608 into a Random Access Memory (RAM) 603. In theRAM 603, various programs and data necessary for the operation of thesystem 600 are also stored. TheCPU 601,ROM 602, andRAM 603 are connected to each other via abus 604. An input/output (I/O)interface 605 is also connected tobus 604.
The following components are connected to the I/O interface 605: aninput portion 606 including a keyboard, a mouse, and the like; anoutput portion 607 including a display such as a Liquid Crystal Display (LCD) and a speaker; astorage section 608 including a hard disk and the like; and acommunication section 609 including a network interface card such as a LAN card, a modem, or the like. Thecommunication section 609 performs communication processing via a network such as the internet. Thedriver 610 is also connected to the I/O interface 605 as needed. Aremovable medium 611 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on thedrive 610 as necessary, so that a computer program read out therefrom is mounted in thestorage section 608 as necessary.
In particular, according to an embodiment of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network through thecommunication section 609, and/or installed from theremovable medium 611. The computer program performs the above-described functions defined in the method of the present application when executed by a Central Processing Unit (CPU) 601. It should be noted that the computer readable medium described herein can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: 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 (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present application, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In this application, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present application may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. 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 case of a remote computer, 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 (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
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 application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of 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 which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present application may be implemented by software or hardware. The described units may also be provided in a processor, and may be described as: a processor includes a confirmation unit, a matching unit, and a play unit. Where the names of these units do not in some cases constitute a limitation on the unit itself, for example, a validation unit may also be described as a "unit that validates the identity of a user in response to receiving a play request from the user".
As another aspect, the present application also provides a computer-readable medium, which may be contained in the apparatus described in the above embodiments; or may be present separately and not assembled into the device. The computer readable medium carries one or more programs which, when executed by the apparatus, cause the apparatus to: and confirming the identity of the user in response to receiving the play request of the user. And determining whether a name of a target television program which is matched with the identity of the user and the current time and has the television program state as enabled exists in a pre-generated recommendation table, wherein the recommendation table is used for representing the corresponding relation among the identity of the user, the time point, the television program name and the television program state. And if so, playing the target television program.
The above description is only a preferred embodiment of the application and is illustrative of the principles of the technology employed. It will be appreciated by a person skilled in the art that the scope of the invention as referred to in the present application is not limited to the embodiments with a specific combination of the above-mentioned features, but also covers other embodiments with any combination of the above-mentioned features or their equivalents without departing from the inventive concept. For example, the above features may be replaced with (but not limited to) features having similar functions disclosed in the present application.