Million-dollar annual salary recruitment: Data algorithm engineer (video big data)[Copy link]
High-paying job opening: Head of the video algorithm team for chip products (annual salary of about 1 million) [Those who do low-level hard algorithms for video processing have made a hard acceleration function library for openCV] 1. Application scenario: There are currently no products. The company is engaged in chip design. In the future, the team will mainly achieve hardware implementation of chips based on algorithms; 2. The short-term plan is not yet clear. Find the person in charge to communicate directly with the company's president. The company currently has no algorithm team and needs to form a team of 5-6 people. The company currently has a scale of 600 people, more than half of whom are chip designers, with revenue of 600 million and net profit of more than 200 million. The development trend is good and it has an excellent basic environment; 3. This person is positioned as the head of the algorithm team, leading a team of five or six people, which is equivalent to the internal director level, or technical expert. The salary will be discussed based on the candidate's situation, consisting of monthly salary and year-end bonus Other information that constitutes this position: 1. The candidate's background is in video or image processing. It is not necessary to be very proficient in image processing, but the basic concepts of image processing must be clear (this seems to be met by most image processing algorithm engineers); 2. A degree from a 211 or above university is preferred. Such candidates have a solid foundation. Try to avoid candidates from general universities unless they are particularly suitable; 3. A background in mathematics is preferred (not necessarily mathematics), which is more about the hardware implementation of the underlying functions of image processing. The candidate does not necessarily have a hardware foundation, but what is more important is a solid algorithm; 4. Build the opencv library instead of just using it. The original job responsibilities of the algorithm engineer are as follows. Please choose one of the following four, but this position may have more than one of the following advantages: Job Responsibilities: 1. Develop visual computing SDK products, which requires familiarity with basic image processing, such as denoising, enhancement, segmentation, correction, feature detection and matching, etc.; 2. Transplant, optimize, maintain and test the code of the algorithm module, which requires a certain programming foundation and familiarity with visual libraries such as OpenCV; 3. Track international cutting-edge technologies in the fields of machine vision and deep learning, read relevant papers and write review documents; 4. Implement algorithm-level demos, analyze and compare algorithm performance, and write relevant documents; Note: Be able to engage in at least one of the above 1, 2, 3, and 4. Job requirements: 1. Bachelor degree or above, major in computer, software, algorithm, mathematics and other related majors; 2. Familiar with common data structures, understand some classification and clustering algorithms, such as SVM, KNN, etc.; 3. Able to tackle technical difficulties in related directions, forward-looking research and application expansion; 4. Have a good sense of teamwork, be willing to accept challenges, and be curious about new technologies and new products. Contact: lee 13480625755 Resume recommendation email (lee@hqrm.cn) Workplace: Nanshan, Shenzhen, there is a bonus for recommendation This content is originally created by EEWORLD forum user 解优人才网. If you need to reprint or use it for commercial purposes, you must obtain the author's consent and indicate the source
Among them, the net profit attributable to shareholders of listed companies (hereinafter referred to as "net profit") of Industrial and Commercial Bank of China, Agricultural Bank of China, Bank of China, China Construction Bank and Bank of Communications (hereinafter collectively referred to as the "Big Five Banks") totaled 1,008.8 billion yuan, with an average daily profit of 2.764 billion yuan, which can be described as "making a fortune every day."
Big data mining is the process of discovering valuable and potentially useful information and knowledge hidden in massive, incomplete, noisy, fuzzy and random large databases. It is also a decision support process. It is mainly based on artificial intelligence, machine learning, pattern learning, statistics, etc. Big data mining is the process of discovering valuable and potentially useful information and knowledge hidden in massive, incomplete, noisy, fuzzy and random large databases. It is also a decision support process. It is mainly based on artificial intelligence, machine learning, pattern learning, statistics, etc. (1) Classification. Classification is to find the common characteristics of a group of data objects in the database and divide them into different classes according to the classification pattern. Its purpose is to map the data items in the database to a given category through the classification model. It can be applied to application classification and trend prediction. For example, Taobao stores divide users' purchases over a period of time into different categories and recommend related products to users according to the situation, thereby increasing the sales of the store. Many algorithms can be used for classification, such as decision trees, knn, Bayes, etc. (2) Regression analysis. Regression analysis reflects the characteristics of the attribute values of data in the database, and discovers the dependency between attribute values by expressing the relationship of data mapping through functions. It can be applied to the prediction of data series and the study of related relationships. In marketing, regression analysis can be applied to various aspects. For example, through regression analysis of sales in this quarter, the sales trend of the next quarter can be predicted and targeted marketing changes can be made. Common regression algorithms include: Ordinary Least Square, Logistic Regression, Stepwise Regression, Multivariate Adaptive Regression Splines and Locally Estimated Scatterplot Smoothing (3) Clustering. Clustering is similar to classification, but the purpose is different from classification. It divides a set of data into several categories based on the similarity and difference of data. The similarity between data belonging to the same category is very large, but the similarity between data in different categories is very small, and the correlation between data across categories is very low. Common clustering algorithms include k-Means algorithm and expectation maximization algorithm (EM). (4) Association rules. Association rules are the associations or relationships hidden between data items, that is, the appearance of one data item can be used to infer the appearance of other data items. The mining process of association rules mainly includes two stages: the first stage is to find all high-frequency item groups from the massive raw data; the second extreme is to generate association rules from these high-frequency item groups. Association rule mining technology has been widely used in financial industry enterprises to predict customer needs. Banks improve their marketing by bundling information that customers may be interested in on their ATM machines for users to understand and obtain relevant information. Common algorithms include Apriori algorithm and Eclat algorithm. (5) Neural network method. As an advanced artificial intelligence technology, neural network is very suitable for processing nonlinear and those processing problems characterized by fuzzy, incomplete, and imprecise knowledge or data due to its own self-processing, distributed storage and high fault tolerance. This feature is very suitable for solving data mining problems. Typical neural network models are mainly divided into three categories: the first category is the feedforward neural network model used for classification prediction and pattern recognition, which is mainly represented by functional networks and perceptrons; the second category is the feedback neural network model used for associative memory and optimization algorithms, represented by Hopfield's discrete model and continuous model. The third category is the self-organizing mapping method used for clustering, represented by the ART model. Although there are many models and algorithms for neural networks, there is no unified rule for which model and algorithm to use in data mining in a specific field, and it is difficult for people to understand the learning and decision-making process of the network. (6) Web data mining. Web data mining is a comprehensive technology that refers to the discovery of implicit patterns P from the document structure and the collection C used by the Web. If C is regarded as input and P is regarded as output, then the Web mining process can be regarded as a mapping process from input to output. Currently, more and more Web data appear in the form of data streams, so Web data stream mining is of great significance. Currently, the commonly used Web data mining algorithms are: PageRank algorithm, HITS algorithm and LOGSOM algorithm. The users mentioned in these three algorithms are all general users, and no distinction is made between individual users. At present, Web data mining faces some problems, including: user classification, website content timeliness, user page dwelling time, page inbound and outbound link counts, etc. With the rapid development of Web technology, these problems are still worth studying and solving. (7) Deep learning Deep learning algorithms are the development of artificial neural networks. They have gained a lot of attention recently, especially after Baidu also began to focus on deep learning, which has attracted a lot of attention in China. As computing power becomes increasingly cheap, deep learning attempts to build much larger and more complex neural networks. Many deep learning algorithms are semi-supervised learning algorithms that are used to process large data sets with a small amount of unlabeled data. Common deep learning algorithms include: Restricted Boltzmann Machine (RBN), Deep Belief Networks (DBN), Convolutional Network, Stacked Auto-encoders. (8) Ensemble algorithms Ensemble algorithms use some relatively weak learning models to independently train the same samples, and then integrate the results for overall prediction. The main difficulty of the ensemble algorithm lies in which independent and weaker learning models to integrate and how to integrate the learning results. This is a very powerful class of algorithms and is also very popular. Common algorithms include: Boosting, Bootstrapped Aggregation (Bagging), AdaBoost, Stacked Generalization (Stacked Generalization, Blending), Gradient Boosting Machine (Gradient Boosting Machine, GBM), Random Forest. In addition, dimensionality reduction is also very important in data analysis engineering. Like clustering algorithms, dimensionality reduction algorithms attempt to analyze the inherent structure of data, but dimensionality reduction algorithms attempt to use less information to summarize or explain data in an unsupervised learning manner. This type of algorithm can be used to visualize high-dimensional data or to simplify data for supervised learning. Common algorithms include: Principle Component Analysis (PCA), Partial Least Square Regression (PLS), Sammon Mapping, Multi-Dimensional Scaling (MDS),Projection Pursuit, etc. For detailed analysis of the advantages and disadvantages of some algorithms and references for algorithm selection, you can take a look at the following blog for the adaptation scenarios and advantages and disadvantages of several commonly used algorithms (very good). The following is a paragraph from the above blog: Reference for algorithm selection: I have translated some foreign articles before. One of the articles gives a simple algorithm selection technique: The first thing you should choose is logistic regression. If its effect is not very good, you can use its results as a benchmark for reference and compare it with other algorithms on this basis; Then try decision trees (random forests) to see if your model performance can be greatly improved. Even if you don’t use it as the final model in the end, you can use random forests to remove noise variables and do feature selection; If the number of features and observation samples is particularly large, then when resources and time are sufficient (this premise is very important), using SVM is a good choice. Usually: [XGBOOST>=GBDT>=SVM>=RF>=Adaboost>=Other…], deep learning is very popular now and is used in many fields. It is based on neural networks. I am currently studying it myself, but my theoretical knowledge is not very solid and my understanding is not deep enough, so I won’t introduce it here. Algorithms are important, but good data is better than good algorithms, and designing good features is very helpful. If you have a very large data set, then no matter which algorithm you use, it may not have much impact on the classification performance (at this time, you can make a decision based on speed and ease of use)
What is needed is someone who has a certain understanding of Verilog (RTL) design code, a deep understanding of the optimization of mathematical operations (such as matrix operation acceleration, FFT/DFT, etc.), or a deep understanding of the optimization of traditional openCV function library operations. Pure software personnel are not suitable because they cannot implement hardware acceleration in embedded systems, and pure chip designers are not suitable because they do not know how to convert complex mathematical operations into a large number of simple multiplications and additions.